用 Portainer 远程管理 docker
参考的官网地址为:https://portainer.readthedocs.io/en/stable/deployment.html
先更新Centos docker 镜像加速地址:
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://ef017c13.m.daocloud.io
新建一个卷(portainer_data)来存Portainer数据
docker volume create portainer_data
docker run -d -p 9000:9000 -p 8000:8000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
修改将要被远程连接的客户机的docker.service 文件开通docker的远程管理:
vim /lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375
重启客户机docker
systemctl daemon-reload
systemctl restart docker
关闭客户机防火墙
查看防火墙状态: systemctl status firewalld.service #绿的running表示防火墙开启
执行关闭命令: systemctl stop firewalld.service
再次执行查看防火墙命令:systemctl status firewalld.service
执行开机禁用防火墙自启命令 : systemctl disable firewalld.service
不建议修改daemon.json,
vim /etc/docker/daemon.json { "registry-mirrors": ["https://registry.docker-cn.com"], "insecure-registries": ["rep.dhis2.org.cn"], # 大坑!不能在这允许DOCKER的TCP通迅,重启不了(CentOS 7,Dokcer 19.03.1): "hosts": ["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"] }
如果docker加入了swarm集群,则建议通过代理统一管理。在Swarm管理节点执行以下语句,然后即可通过代理连接客户机了
$ curl -L https://downloads.portainer.io/portainer-agent-stack.yml -o portainer-agent-stack.yml $ docker stack deploy --compose-file=portainer-agent-stack.yml portainer
转载请注明出处。