侧边栏壁纸
博主头像
惬意小蜗牛博主等级

海内存知己,天涯若比邻!

  • 累计撰写 54 篇文章
  • 累计创建 143 个标签
  • 累计收到 57 条评论

目 录CONTENT

文章目录

Docker 部署 Portainer 面板并添加单个 Docker 节点

惬意小蜗牛
2021-08-18 / 0 评论 / 0 点赞 / 3,117 阅读 / 903 字 / 正在检测是否收录...

介绍

Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署。

官网地址:https://www.portainer.io/

安装

官方安装说明:https://www.portainer.io/installation/

此安装过程包含汉化过程

命令

准备工作

  1. 创建持久化挂载路径 mkdir -p /data/docker/portainer/data
  2. 下载文末汉化包“Portainer-CN.zip”,并解压,解压后得到 “Portainer-CN” 目录,将其重命名为 public
  3. 将重命名后的 “public” 目录移动到 /data/docker/portainer/
docker run --name portainer --restart=always --privileged=true \
-p 8000:8000 \
-p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /data/docker/portainer/data/:/data \
-v /data/docker/portainer/public/:/public \
-d portainer/portainer

-p 参数映射容器端口到本地 [服务器端口 : 容器内部端口]
-v 参数持久化容器目录到本地 [服务器路径 : 容器内部路径]
9000 端口为 web 管理界面端口,浏览器访问运行Portainer的Docker引擎的端口9000
-v /var/run/docker.sock:/var/run/docker.sock 默认配置 portainer 所在服务器 docker 端点

登录和使用Portainer

浏览器访问:http://ip:9000 或自行配置 Nginx 做域名代理
前提请开放防火墙端口或关闭防火墙
直接进入Portainer,自行设置管理员账户

以下为英文未汉化版本的截图

portainer-login-websoft90fdf92e337c7a81e.png

选择“本地/Local”作为镜像连接选项,然后点击“连接/Connect”

portainer-loginconnect-websoft985c437c55de23497.png

进入Portainer后台管理界面,点击Local项目就可以开始使用Portainer了

在 Portainer 添加其他服务器 Docker 节点, 以下称之为目标服务器

  • 在需要添加到 Portainer 的服务器中安装 Docker
  • 安装完成Docker后,修改 vim /usr/lib/systemd/system/docker.service 暴露 docker api 接口
vi /usr/lib/systemd/system/docker.service

# 找到 ExecStart=/usr/bin/dockerd fd:// --containerd=/run/containerd/containerd.sock 这一行
# 将这一行注释或修改为如下内容
# 增加内容为  -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -H fd:// --containerd=/run/containerd/containerd.sock
# 退出保存

# 重载 daemon 及 重启 Docker
systemctl daemon-reload && systemctl restart docker

# 开放防火墙端口,如未开启防火墙可不需设置,如不在同一局域网段内,请配合使用外网IP加端口映射或域名映射访问
firewall-cmd --zone=public --add-port=2375/tcp --permanen
systemctl restart firewalld.service

# 查看 docker info 结果
docker info

# 出现以下内容则配置成功
WARNING: API is accessible on http://0.0.0.0:2375 without encryption.
         Access to the remote API is equivalent to root access on the host. Refer
         to the 'Docker daemon attack surface' section in the documentation for
         more information: https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
  • 在 Portainer 所在服务器测试是否可连接目标服务器 Docker Api
# 格式 docker -H [目标服务器IP/公网IP]:[2375/外网IP映射的端口号] info
docker -H 192.168.1.123:2375 info

# 出现以下内容则配置成功
WARNING: API is accessible on http://0.0.0.0:2375 without encryption.
         Access to the remote API is equivalent to root access on the host. Refer
         to the 'Docker daemon attack surface' section in the documentation for
         more information: https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
  • 完成以上内容后即可在 Portainer 的 “端点/EndPoint” 菜单中点击 “添加端点/Add EndPoint”, 来添加目标服务器 Docker节点

addendpoint6f5fbb0a162b3c85.png

  • 添加完成后即可在 Portainer 首页菜单中看到已添加的节点信息
0

评论区