通过Portainer远程管理内网Docker容器
Docker是一种开源的应用容器引擎,它允许开发人员将应用程序及其所有依赖项打包到一个独立的容器中,从而实现快速部署、可移植性和环境一致性,以其轻量化、快速启动、可移植性和易于管理等特性,在软件开发和部署领域得到了广泛应用,
Portainer是一款开源的轻量级容器管理工具,提供了直观的图形用户Web界面,用户无需深入学习命令行工具,即可轻松实现Docker镜像与容器的部署、管理和监控,适用于各种规模的容器环境。
利用零讯内网穿透,管理员可在任意位置通过互联网远程登录 Portainer Web管理UI,对容器镜像及容器进行在线添加、删除、停止等操作,在出差、家里时,也能轻松完成企业内部软件系统部署与维护。
下面以Centos7为例,在Centos7 上部署零讯内网穿透与Portainer容器管理平台
先决条件
- 拥有一个有效的 ZeroNews 账户。
第 1 步:部署 Portainer
通过容器部署 Portainer ,简单3步即可快速完成部署
1.首先创建数据卷,实现数据持久化
docker volume create portainer_db
2.拉取 Portainer 镜像
docker pull portainer/portainer
3.启动 Portainer 容器
docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_db:/data portainer/portainer
-p 9000:9000 :映射 portainer 管理平台端口 9000 到 主机 9000 端口
-v portainer_db:/data :将portainer_db 数据卷 挂载到 portainer容器 /data 目录
-v /var/run/docker.sock:/var/run/docker.sock : 将/var/run/docker/sock 挂载到 portainer容器 /var/run/docker.sock
4.容器 Portainer 启动后,可以通过 docker ps 查看运行的 Portainer 容器,并通过主机IP访问 Portainer 管理平台
在浏览器中输入 http://主机IP:9000 访问Portainer 管理平台
设置完 Portainer 管理平台 admin账号的密码后,就可以正常登录 Portainer 管理平台
点击 local
,在点击 Containners
,可以查看主机运行的容器,
添加容器, 点击 “Add containner” 可以添加容器
Portainer 安装完成后,接下来在Centos 主机上安装 ZeroNews 程序
第 2 步:在CentOS主机上运行 ZeroNews
参考 Linux 中运行 ZeroNews , 在 Linux 服务器上运行 ZeroNews,绑定 Token, 完成 ZeorNews 客户端上线。
第 3 步:为 Portainer 管理平台分配域名
- 添加用于 Portainer 管理平台的公网域名
用户登录 ZeroNews 平台,在 "资源" 的 "域名" 管理页面, 点击 "添加域名" 添加公网可访问的域名。
- 域名前缀: 用户输入定义的 域名前缀,如 portainer
- 勾选 HTTPS 协议
第 4 步:为 Portainer 管理平台添加公网映射
-
进入"映射"页面,点击 "添加映射”添加 portainer 映射 。
- 选择设备:选择已经认证的设备
- 映射协议:选择 HTTP 协议
- 公网访问地址:选择 portainer 域名,如
portainer.ny.takin.cc
- 映射带宽: 为映射分配带宽,不大于用户当前的最大可用带宽
- 内网映射地址:内网IP地址默认输入
127.0.0.1
- 内网端口输入Portainer 管理平台的端口号
9000
-
Portainer 管理平台的映射添加完成后,可在应用详情中可查看添加好的映射列表.
-
在浏览器中,输入
http://portainer.ny.takin.cc
,就可以远程管理企业内部的 Docker 容器