参考的官网地址为: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