下载静态二进制存档
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