下载静态二进制存档

https://download.docker.com/linux/static/stable/x86_64/

上传服务器并解压

tar -zxvf docker-20.10.11.tgz
cp docker/* /usr/bin/

配置 docker.service文件

vim /usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target

启动dockerd服务进程

systemctl daemon-reload
systemctl start docker.service

查看docker 安装信息

docker info

开机自动启动

systemctl enable docker

使用有网服务器下载好镜像

 保存镜像

docker save  8487e86fc6ee  > /home/fastdfs.tar

导入镜像

将此镜像上传到所需安装的服务器中导入镜像

docker load < fastdfs.tar

重命名镜像

docker tag 8487e86fc6ee delron/fastdfs:latest

启动镜像

使用docker镜像构建tracker容器(跟踪服务器,起到调度的作用)

docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs -v /etc/localtime:/etc/localtime delron/fastdfs tracker

使用docker镜像构建storage容器(存储服务器,提供容量和备份服务)

docker run -dti  --network=host --name storage -e TRACKER_SERVER=49.233.74.72:22122 -v /var/fdfs/storage:/var/fdfs  -v /etc/localtime:/etc/localtime  delron/fastdfs storage

进入storage容器

docker ps  # 先找到容器id
sudo docker exec -it 9e4f1fc5775d /bin/bash

到storage的配置文件中配置http访问的端口,配置文件在

vim /etc/fdfs/storage.conf

默认端口是8888,也可以不进行更改。

如果重启后无法启动的会,可能是报下面错误了,手动创建 vi /var/fdfs/logs/storaged.log 文件即可

tail: cannot open '/var/fdfs/logs/storaged.log' for reading: No such file or directory

配置nginx

进入storage,配置nginx,在/usr/local/nginx/conf/目录下,修改nginx.conf文件,默认配置不修改也可以

vim /usr/local/nginx/conf/nginx.conf

测试上传文件

将一张照片(1.jpg)放置在/var/fdfs/目录下,进入storage容器,进入/var/fdfs目录,运行下面命令

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.jpg

通过url访问http://ip:8888/group1/M00/00/00/rBF_oGDejcaAeH8oAAAdVBXsJLk845.jpg,即可查看到图片

开放端口

firewall-cmd --zone=public  --permanent --add-port=8888/tcp

firewall-cmd --zone=public  --permanent --add-port=22122/tcp

firewall-cmd --zone=public  --permanent --add-port=23000/tcp

 

iptables -I INPUT -p tcp --dport 8888 -j ACCEPT

iptables -I INPUT -p tcp --dport 22122 -j ACCEPT

iptables -I INPUT -p tcp --dport 23000 -j ACCEPT 

重启防火墙

systemctl restart firewalld

开机启动容器

docker update --restart=always tracker

docker update --restart=always storage

常见问题

storage 无法启动
运行 docker container start storage 无法启动,进行如下操作即可:
可以删除/var/fdfs/storage/data目录下的fdfs_storaged.pid 文件,然后重新运行storage。

 

https://www.cnblogs.com/tester-yu/p/14962697.html

https://www.cnblogs.com/ygjzs/p/14785828.html

posted on 2022-03-10 13:41  23云恋49枫  阅读(519)  评论(0编辑  收藏  举报