当前位置: 首页 > news >正文

DockerComposeUI+cpolar:容器管理的远程可视化方案

前言:DockerComposeUI作为Docker容器的可视化管理工具,通过直观的Web界面实现容器的启动、暂停、终止等操作,支持镜像管理和Compose文件编辑。特别适合开发团队和运维人员,其图形化操作简化了复杂的命令行操作,状态面板实时显示容器运行情况,帮助快速定位问题节点,提升容器管理效率。无论是新手工程师还是资深运维,都能通过简单操作掌控容器集群状态。

实际使用中,最显著的变化是容器管理效率的提升——过去需要记忆复杂的docker-compose命令,现在只需点击按钮即可完成操作。界面布局清晰,容器状态一目了然,即使是Docker新手也能快速上手。特别是镜像管理功能,支持一键拉取和删除,大大简化了环境配置流程。团队协作时,可视化界面让沟通更顺畅,问题定位更精准。

然而,本地部署限制了工具的协作价值。当团队成员分散各地时,无法远程管理容器集群;运维人员外出时无法及时处理紧急情况;多环境(开发/测试/生产)的管理更是需要频繁切换工作地点,严重影响工作效率。这种物理限制成为容器化协作的一大障碍。


cpolar内网穿透的加入完美解决了这一痛点。通过简单配置即可将DockerComposeUI暴露至公网,团队成员无论身处何地都能安全访问容器管理界面。固定域名功能确保访问地址不变,多设备同步使用无需重复配置,真正实现了"容器管理随身带"的理想状态。安全加密传输保障操作安全,让远程容器管理不再受限于局域网。web可视化界面,更直观的进行远程编写。

目录

1. 安装Docker

 2. 检查本地docker环境

3. 安装cpolar内网穿透

4. 使用固定二级子域名地址远程访问


1. 安装Docker

本文演示环境:CentOS7,Xshell7远程ssh

没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。

如没有安装Docker,需先安装Docker:

- 安装软件包(提供实用程序)并设置存储库

  ```shell$ sudo yum install -y yum-utils$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo```

  安装Docker引擎

  ```shellsudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin```

  启动Docker

  ```sudo systemctl start docker```

  通过运行映像来验证 Docker 引擎安装是否成功

  ```shellsudo docker run hello-world```

 2. 检查本地docker环境

检查系统版本

```shellcat /etc/os-release```

检查docker状态

```shellsystemctl status docker```

下载Docker Compose UI镜像

```shelldocker pull francescou/docker-compose-ui:1.13.0```

部署Docker Compose UI服务:

新建安装目录

```shellmkdir -p /data/compose-uicd /data/compose-ui/```

创建Docker Compose UI容器

```shelldocker run -it -d --name docker-web -p 9000: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](https://www.cpolar.com)

- 使用一键脚本安装命令


```shellcurl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash```

- 向系统添加服务

```shellsudo systemctl enable cpolar```

- 启动cpolar服务

```shellsudo systemctl start cpolar```

cpolar安装成功后,在外部浏览器上访问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官网](https://www.cpolar.com/),点击左侧的预留,找到保留二级子域名,为远程服务器连接保留一个固定二级子域名地址:

- 地区:选择**China VIP**

- 描述:即备注,可自定义,本例使用

点击`保留`

地址保留成功后,复制生成的公网地址,打开cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我们刚才创建的随机公网地址隧道 **compose**,点击`编辑`

修改隧道信息,将刚才保留成功的固定http地址:**compose**配置到隧道中

- 域名类型:选择二级子域名

- 预留的http地址:复制粘贴官网保留成功的地址,本例中为:compose

- 地区选择:China VIP

点击`更新`

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新为了两个**固定二级子域名地址。**

接下来与之前的操作一样,可以在其他电脑(异地)上,使用任意一个固定二级子域名地址复制到浏览器访问即可。

如上图所示,即为配置成功。我们现在就能在公网使用cpolar内网穿透工具生成的永久不变的固定二级子域名,使用任意浏览器远程访问docker compose ui了,无需购买域名服务器,也不用设置路由器那么麻烦,轻松实现大家远程访问本地服务的需求!

**DockerComposeUI与cpolar的组合,重新定义了容器管理的协作模式。对于追求高效运维的团队而言,这种方案不仅简化了本地操作,更打破了物理空间的限制——让容器管理不再受制于办公环境,随时随地都能掌控服务状态。当技术工具变得如此灵活,团队的协作效率自然水到渠成。**

本篇文章知识点来源[cpolar官网][https://www.cpolar.com]

1.  cpolar博客:配置二级子域名: [https://www.cpolar.com/blog/configure-the-secondary-subdomain-name](https://www.cpolar.com/blog/configure-the-secondary-subdomain-name)

2.  cpolar博客:配置自定义域名: [https://www.cpolar.com/blog/configure-your-own-domain-name](https://www.cpolar.com/blog/configure-your-own-domain-name)

3.  cpolar博客:配置固定TCP端口地址: [https://www.cpolar.com/blog/configure-fixed-tcp-port-address](https://www.cpolar.com/blog/configure-fixed-tcp-port-address)

4.  cpolar博客:配置固定FTP地址: [https://www.cpolar.com/blog/configure-fixed-ftp-address](https://www.cpolar.com/blog/configure-fixed-ftp-address)


文章转载自:

http://PBnOmhgg.cfcpb.cn
http://I9Uk0f7n.cfcpb.cn
http://1dAG9Q3t.cfcpb.cn
http://9tbGMTak.cfcpb.cn
http://F26frQ7n.cfcpb.cn
http://B0tpR0cs.cfcpb.cn
http://Q2GnQS8P.cfcpb.cn
http://xbDlXXpt.cfcpb.cn
http://M1K3ihVD.cfcpb.cn
http://sZUx1Fep.cfcpb.cn
http://KOaVpe8H.cfcpb.cn
http://lEp8GRmN.cfcpb.cn
http://WylHm6e3.cfcpb.cn
http://BjziU3x7.cfcpb.cn
http://VbQiqWYc.cfcpb.cn
http://uYxUgTOd.cfcpb.cn
http://2EHDELXp.cfcpb.cn
http://th0a986B.cfcpb.cn
http://5gBBnKdi.cfcpb.cn
http://wK5TDpz4.cfcpb.cn
http://uCXB2zcj.cfcpb.cn
http://1cQ5ySQQ.cfcpb.cn
http://BjaKDnmb.cfcpb.cn
http://VuSFYHt7.cfcpb.cn
http://Ahhuuvl4.cfcpb.cn
http://FWbepA73.cfcpb.cn
http://UaXqCgD9.cfcpb.cn
http://i1W8rjak.cfcpb.cn
http://EKY9vrPi.cfcpb.cn
http://2A3G5ZFv.cfcpb.cn
http://www.dtcms.com/a/385421.html

相关文章:

  • tcp的三次握手与四次挥手简介
  • 2025算法八股——深度学习——MHA MQA GQA
  • 常见岩性分类与油气勘探意义笔记
  • 贪心算法应用:内存分配(First Fit)问题详解
  • RTK基站模块技术要点与作用解析
  • Istio与系统软中断:深度解析与问题排查全指南
  • 常用命令整理
  • PrestaShop 后台 Session 权限错误与产品链接 404 错误的解决指南
  • springboot“期待相遇”图书借阅系统的设计与实现(代码+数据库+LW)
  • SQLAlchemy -> Base.metadata.create_all(engine )详解
  • JVM 三色标记算法详解!
  • BUMP图改进凹凸贴图映射
  • 嵌入式硬件——I.MX6U-Mini 蜂鸣器(BEEP)模块
  • LeetCode 2799.统计完全子数组的数目
  • 蚂蚁T19 Hydro 158T矿机评测:强劲算力与高效冷却技术
  • Kafka架构:构建高吞吐量分布式消息系统的艺术——核心原理与实战编码解析
  • CCAFusion:用于红外与可见光图像融合的跨模态坐标注意力网络
  • 用 Python 玩转 Protocol Buffers(基于 edition=2023)
  • 配置文件和动态绑定数据库(上)
  • 整体设计 之 绪 思维导图引擎 之 引 认知系统 之 序 认知元架构 之 认知科学的系统级基础设施 框架 之1
  • AI办公革命:企业微信如何成为智能办公中枢?
  • 企业微信AI功能实操指南:智能表格与邮件如何提升协作效率?
  • 04 完成审批任务
  • keil出现 cmsis_compiler.h(279): error: #35: #error directive: Unknown compilr解决方法
  • CSS `:has()` 实战指南:让 CSS 拥有“if 逻辑”
  • 【开题答辩全过程】以 Java校园二手书城平台为例,包含答辩的问题和答案
  • 机器视觉在新能源汽车电池中有哪些检测应用
  • CES Asia的“五年计划”:打造与北美展比肩的科技影响力
  • 王梦迪团队推出TraceRL:迈向扩散语言模型「RL大一统」
  • 运用脚本部署lamp架构