文章目录
-
- 前言
- [1. 安装部署DockerUI](#1. 安装部署DockerUI)
- [2. 安装cpolar内网穿透](#2. 安装cpolar内网穿透)
- [3. 配置DockerUI公网访问地址](#3. 配置DockerUI公网访问地址)
- [4. 公网远程访问DockerUI](#4. 公网远程访问DockerUI)
- [5. 固定DockerUI公网地址](#5. 固定DockerUI公网地址)
前言
DockerUI是一个docker容器镜像的可视化图形化管理工具。DockerUI可以用来轻松构建、管理和维护docker环境。它是完全开源且免费的。基于容器安装方式,部署方便高效,浏览和维护docker单节点或集群节点worker和manager。DockerUI具有易于使用的界面。它不需要记住 docker 指令。只需下载镜像即可立即加入并完成部署。
使用DockerUI并结合cpolar内网穿透可以更加轻松的管理docker和swarm,实现后台公网访问并管理,视觉性更加直观,后台开发更加便利。
1. 安装部署DockerUI
通过docker容器安装,拉取镜像
shell
docker image pull joinsunsoft/docker.ui
创建容器
shell
docker run --restart always --name docker.ui -d -v /home/docker_data/docker.ui/docker.sock:/var/run/docker.sock -p 8999:8999 joinsunsoft/docker.ui
打开浏览器访问 http://192.168.149.1:8999 (http://本机IP:8999 )
默认账号密码:ginghan 123456

登录后进入到DockerUI界面,本地部署访问就成功了.

可以通过 Web 界面对 Docker 容器进行管理和监控,查看镜像列表

当我们在家或在外出差办公需要进入到DockerUI进行容器web管理等,这个时候结合cpolar的内网穿透可以进行异地远程访问DockerUI并进行后台的操作,随时随地实现远程任意浏览器进行访问,大大提高了工作效率!
下面将讲解如何安装cpolar。

2. 安装cpolar内网穿透
我们成功使用Docker安装部署了DockerUI,接下来我们在Linux安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
shell
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系统添加服务
shell
sudo systemctl enable cpolar
- 启动cpolar服务
shell
sudo systemctl start cpolar
cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

3. 配置DockerUI公网访问地址
点击左侧仪表盘的隧道管理------创建隧道,创建一个DockerUI的cpolar 公网地址隧道!
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:8999(本地访问时的端口)
- 域名类型:免费选择随机域名
- 地区:选择China Top
点击创建

隧道创建成功后,点击左侧的状态------在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

4. 公网远程访问DockerUI
使用上面的cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到DockerUI管理界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问,新域名登录,可能需要重新登陆!

5. 固定DockerUI公网地址
由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。
我一般会使用固定二级子域名,因为我希望将网址发送给身边朋友或同事进行后台协作时,就可以直接使用固定的公网地址进行填写了。它是一个固定、易记的公网地址(例如:DockerUI.cpolar.cn)因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】
注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

保留成功后复制保留成功的二级子域名的名称

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理------隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
点击更新
(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

最后,我们使用固定的公网地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问DockerUI界面,提高工作效率!
