Docker Compose UI 是一款将 Docker Compose 命令行操作转化为图形界面的工具,能实现服务启动 / 停止、实时日志查看、配置动态调整等功能。它特别适合刚接触容器技术的新手,无需死记硬背复杂指令;对团队而言,直观的界面也能降低协作门槛。其最大优点是把抽象的命令转化为拖拽、点击的可视化操作,大幅降低了容器管理的技术门槛。
使用 Docker Compose UI 时,能明显感受到效率提升 —— 比如之前改个端口映射要手动编辑 YAML 文件,现在拖拽调整就行。不过需要注意,首次部署时要确保 Docker 服务正常运行,否则 UI 可能无法连接到容器;另外,界面上的操作会实时同步到容器,修改配置前最好先备份,避免误操作影响服务。
但这款工具默认只能在局域网内使用,这带来不少麻烦。比如下班在家时,服务器上的容器出了问题,得远程联系同事帮忙处理;或者出差时想临时调整服务配置,却因为不在内网而束手无策,严重影响工作灵活性。
而当 Docker Compose UI 与 cpolar 结合后,这些问题迎刃而解。cpolar 能将局域网内的服务映射到公网,意味着无论在办公室、家里还是咖啡厅,只要有网络,就能通过浏览器访问 Docker Compose UI。远程查看容器状态、重启服务变得和在本地操作一样简单,彻底打破了局域网的限制,让容器管理更自由。
本篇文章将dockercompose结合cpolar内网穿透软件实现公网访问docker compose web可视化界面,更直观的进行远程编写。
1. 安装Docker
本文演示环境:CentOS7,Xshell7远程ssh
没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。
如没有安装Docker,需先安装Docker:
安装软件包(提供实用程序)并设置存储库
$sudoyuminstall-y yum-utils $sudoyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo安装Docker引擎
sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin启动Docker
sudo systemctl start docker通过运行映像来验证 Docker 引擎安装是否成功
sudodockerrun hello-world
2. 检查本地docker环境
检查系统版本
cat/etc/os-release检查docker状态
systemctl statusdocker下载Docker Compose UI镜像
dockerpull francescou/docker-compose-ui:1.13.0部署Docker Compose UI服务:
新建安装目录
mkdir-p /data/compose-uicd/data/compose-ui/创建Docker Compose UI容器
dockerrun -it -d --name docker-web -p9000:9000 -v /var/run/docker.sock:/var/run/docker.sock docker.io/uifd/ui-for-docker打开新的浏览器,输入本机IP:9000,进入到docker compose ui界面,启动了 DockerUI容器之后,就可以用它来执行启动、暂停、终止、删除以及DockerUI提供的其它操作Docker容器的命令。
可以更直观的查看docker容器
击Action,可以对已有的镜像镜像移除操作。点击Pull,可以拉取镜像。点击镜像ID进去后可以添加或移除镜像tag
我们就成功在本地搭建了docker compose ui可视化工具,但是如果有时候我们需要异地来远程访问docker容器来执行启动、暂停、终止、删除等,这个时候我们就需要使用cpolar内网穿透工具,实现在公网上无需公网ip就可以直接访问docker。
3. 安装cpolar内网穿透
下面是安装cpolar步骤:
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
curl-L https://www.cpolar.com/static/downloads/install-release-cpolar.sh|sudobash- 向系统添加服务
sudosystemctlenablecpolar- 启动cpolar服务
sudosystemctl start cpolarcpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。
接下来配置一下docker compose ui的公网地址,
登录后,点击左侧仪表盘的隧道管理——创建隧道,创建一个公网http地址隧道
隧道名称:可自定义命名,注意不要与已有的隧道名称重复
协议:选择http
本地地址:9000 (本地访问的地址)
域名类型:免费选择随机域名
地区:选择China Top
创建成功后,打开左侧在线隧道列表,查看刚刚创建隧道后生成两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址复制到浏览器访问即可。
可以看到,能够正常公网远程访问。
小结
为了方便演示,我们在上边的操作过程中使用了cpolar生成的http公网地址隧道,其公网地址是随机生成的。
这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。
如果有长期远程访问docker compose ui的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定二级子域名地址的方式来远程访问。
4. 使用固定二级子域名地址远程访问
接下来保留一个固定http地址,登录cpolar官网,点击左侧的预留,找到保留二级子域名,为远程服务器连接保留一个固定二级子域名地址:
- 地区:选择China VIP
- 描述:即备注,可自定义,本例使用
点击保留
地址保留成功后,复制生成的公网地址,打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们刚才创建的随机公网地址隧道compose,点击编辑
修改隧道信息,将刚才保留成功的固定http地址:compose配置到隧道中
- 域名类型:选择二级子域名
- 预留的http地址:复制粘贴官网保留成功的地址,本例中为:compose
- 地区选择:China VIP
点击更新
隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新为了两个固定二级子域名地址。
接下来与之前的操作一样,可以在其他电脑(异地)上,使用任意一个固定二级子域名地址复制到浏览器访问即可。
如上图所示,即为配置成功。我们现在就能在公网使用cpolar内网穿透工具生成的永久不变的固定二级子域名,使用任意浏览器远程访问docker compose ui了,无需购买域名服务器,也不用设置路由器那么麻烦,轻松实现大家远程访问本地服务的需求!
通过 Docker Compose UI 的可视化操作简化容器管理,再借助 cpolar 突破网络限制,无论是新手入门还是团队协作,都能更高效、灵活地应对容器运维需求,让技术工具真正服务于工作本身。
本篇文章知识点来源[cpolar官网][https://www.cpolar.com]
- cpolar博客:配置二级子域名: https://www.cpolar.com/blog/configure-the-secondary-subdomain-name
- cpolar博客:配置自定义域名: https://www.cpolar.com/blog/configure-your-own-domain-name
- cpolar博客:配置固定TCP端口地址: https://www.cpolar.com/blog/configure-fixed-tcp-port-address
- cpolar博客:配置固定FTP地址: https://www.cpolar.com/blog/configure-fixed-ftp-address