如何在CentOS搭建docker compose ui可视化工具并无公网IP远程管理容器

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
    • 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

    • 1. 安装 Docker
    • 2. 检查本地 docker 环境
    • 3. 安装 cpolar 内网穿透
    • 4. 使用固定二级子域名地址远程访问

Docker Compose UI 是 Docker Compose 的 web 界面。这个项目的目标是在 Docker Compose 之上提供一个最小的 HTTP API,同时保持与 Docker Compose CLI 的完全互操作性。

本篇文章将 dockercompose 结合 cpolar 内网穿透软件实现公网访问 docker compose web 可视化界面,更直观的进行远程编写。

1. 安装 Docker

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

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

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

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

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

    安装 Docker 引擎

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

    启动 Docker

    sudo systemctl start docker
    

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

    sudo docker run hello-world
    

2. 检查本地 docker 环境

检查系统版本

cat /etc/os-release

image-20240206110627721

检查 docker 状态

systemctl status docker

image-20240206110513105

下载 Docker Compose UI 镜像

docker pull francescou/docker-compose-ui:1.13.0

image-20240206111413603

部署 Docker Compose UI 服务:

新建安装目录

 mkdir -p /data/compose-ui
 cd /data/compose-ui/

创建 Docker Compose UI 容器

docker 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 容器的命令。

b2287b47d019a6d12d63f9e139db0c2

可以更直观的查看 docker 容器

7c65e6cedc3141da9da1144e82ead55

击 Action,可以对已有的镜像镜像移除操作。点击 Pull,可以拉取镜像。点击镜像 ID 进去后可以添加或移除镜像 tag
image-20240206132247375

我们就成功在本地搭建了 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 | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动 cpolar 服务
sudo systemctl start cpolar

cpolar 安装成功后,在外部浏览器上访问 Linux 的 9200 端口即:【http://服务器的局域网 ip:9200】,使用 cpolar 账号登录,登录后即可看到 cpolar web 配置界面,结下来在 web 管理界面配置即可。

接下来配置一下 docker compose ui 的公网地址,

登录后,点击左侧仪表盘的隧道管理——创建隧道,创建一个公网 http 地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复

  • 协议:选择 http

  • 本地地址:9000 (本地访问的地址)

  • 域名类型:免费选择随机域名

  • 地区:选择 China Top

    image-20240206133335895

创建成功后,打开左侧在线隧道列表,查看刚刚创建隧道后生成两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址复制到浏览器访问即可。

image-20240206133536783

可以看到,能够正常公网远程访问。

image-20240206133918532

小结

为了方便演示,我们在上边的操作过程中使用了 cpolar 生成的 http 公网地址隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在 24 小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问 docker compose ui 的需求,但又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定二级子域名地址的方式来远程访问。

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

接下来保留一个固定 http 地址,登录cpolar 官网,点击左侧的预留,找到保留二级子域名,为远程服务器连接保留一个固定二级子域名地址:

  • 地区:选择China VIP
  • 描述:即备注,可自定义,本例使用

点击保留

image-20240206134246900

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

image-20240206134408276

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

  • 域名类型:选择二级子域名
  • 预留的 http 地址:复制粘贴官网保留成功的地址,本例中为:compose
  • 地区选择:China VIP

点击更新

image-20240206134535669

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

image-20240206134728766

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

image-20240206134814224

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

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/475062.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CSS隐藏video标签中各种控件

1.edio标签加上controls会出现视频控件&#xff0c;如播放按钮、进度条、全屏、观看的当前时间、剩余时间、音量按钮、音量的控制条等等 <video type"video/mp4" src"" autoplay"" style"width: 400px; height: 300px;" id"e…

刚进公司第一天-电脑环境搭建

写在前面 之前在公司做过一次开发小工具的分享&#xff0c;这两天有个同事找我学习一些小工具开发的知识&#xff0c;但是我发现他的基础是真的差&#xff0c;想学开发知识却连自己本地电脑环境都没弄好&#xff0c;确实&#xff0c;有些人工作了很久&#xff0c;由于自己工作中…

【笔记】网络安全相关法规学习(网络安全法、数据安全法、个人信息保护法)

文章目录 1. 作业及Presentation2. 国家主权基本要素、基本权利、基本原则3. 网络空间主权基本要素、基本权利、基本原则4. 网络安全法、数据安全法、个人信息保护法中的用语定义4.1 网安法用语定义4.2 数据安全法用语4.3 个人信息法用语4.4 法、条例等的区别 5. 网络安全法各条…

【Greenhills】GHS-MULTI IDE-Ubuntu纯命令系统部署license文件

【更多软件使用问题请点击亿道电子官方网站查询】 1、 文档目标 记录在Ubuntu纯命令系统中部署license文件的步骤。 2、 问题场景 客户服务器为Linux纯命令行的环境&#xff0c;客户也无其他服务器可以部署&#xff0c;需在纯命令行上尝试安装。 3、软硬件环境 1&#xff09…

三种方式,浅谈 Cocos Creator 的动画添加

前言 虽然 Cocos 的官方文档对动画系统做了较详细的介绍&#xff0c;但是对于刚接触的同学&#xff08;比如我&#xff09;来说还是不太友好。尽管如此&#xff0c;我就按文档加社区帖子一起实践了一下。为了方便忘记后能快速捡起&#xff0c;所以就用我的方式结合使用场景&am…

大屏页面 电子数字 制作

字体包下载地址 链接: https://pan.baidu.com/s/1pjslpT5QQi7-oALDM-uX8g 提取码: zxcv 效果展示 使用前使用后 使用方式 1.解压后将文件夹放入public 2.在公用样式中加入 font-face {font-family: mFont;src: url(../../public/DS-Digital/DS-DIGI-1.ttf); } 3. 在项目…

【ONE·基础算法 || 位运算】

总言 主要内容&#xff1a;编程题举例&#xff0c;理解位运算的思想。 文章目录 总言1、常见位运算总结1.1、基础位运算1.2、位图思想1.2.1、给一个数n&#xff0c;确定它的二进制表示中的第x位是0还是11.2.2、将一个数n的二进制表示的第x位修改成 11.2.3、将一个数n的二进制表…

管理公司员工上网行为的软件都有哪些?

随着互联网的飞速发展&#xff0c;企业面临的网络安全威胁也日益加剧。为了保护企业数据安全、提高工作效率&#xff0c;上网行为管理系统及其相关管理软件应运而生。 未来&#xff0c;随着技术的不断进步和网络安全威胁的不断演变&#xff0c;上网行为管理系统及其管理软件将不…

【Unity】Plastic云同步总是password error

【背景】 Plastic是Unity的项目版本控制功能&#xff0c;可以方便在多个地点同步项目进度。原本用得挺爽的&#xff0c;结果今天遇到糟心事&#xff0c;明明Hub也正常登着&#xff0c;可Plastic的一个update的dll就是不停反复运行并报Password invalid。 【问题分析】 听说I…

CClinkie转Devicenet网关在现场的案例

CClinkie转Devicenet网关在现场的案例 随着工业自动化的不断发展&#xff0c;不同的通讯协议在工厂现场设备之间传输数据显得尤为重要。然而&#xff0c;不同的设备可能支持不同的通讯协议&#xff0c;这为设备之间的互操作性带来了挑战。在这种情况下&#xff0c;网关设备应运…

linux终端下vi文本编辑器的基础使用方法

一、linux终端下vi文本编辑器的基础使用方法&#xff1a; 下面将提供一些在Linux终端中使用vi或vim&#xff08;vi的增强版&#xff09;的基础操作方法&#xff1a; 1.打开文件&#xff1a; vi filename.txt 如果文件存在&#xff0c;则打开该文件&#xff1b;如果不存在&a…

力扣爆刷第101天之hot100五连刷91-95

力扣爆刷第101天之hot100五连刷91-95 文章目录 力扣爆刷第101天之hot100五连刷91-95一、62. 不同路径二、64. 最小路径和三、5. 最长回文子串四、1143. 最长公共子序列五、72. 编辑距离 一、62. 不同路径 题目链接&#xff1a;https://leetcode.cn/problems/unique-paths/desc…

机器人路径规划:基于冠豪猪优化算法(Crested Porcupine Optimizer,CPO)的机器人路径规划(提供MATLAB代码)

一、机器人路径规划介绍 移动机器人&#xff08;Mobile robot&#xff0c;MR&#xff09;的路径规划是 移动机器人研究的重要分支之&#xff0c;是对其进行控制的基础。根据环境信息的已知程度不同&#xff0c;路径规划分为基于环境信息已知的全局路径规划和基于环境信息未知或…

Python代码规范化

什么是代码规范化&#xff1f; 代码的规范化书写是指按照一定的规范和标准编写代码&#xff0c;使得代码结构清晰、易于阅读和理解。 代码规范化的意义 Python代码规范化的意义在于提高代码可读性、可维护性和可重用性&#xff0c;从而使代码更易于理解、调试和协作&#xff0c…

QKSMS:安卓开源短信应用的替代之选

QKSMS&#xff1a;安卓开源短信应用的替代之选 1. 引言 QKSMS是一个开源的安卓短信应用&#xff0c;旨在取代安卓系统自带的短信应用。它目前可以在Google Play商店和F-Droid上获取&#xff0c;并被誉为安卓平台上最美观的短信应用之一。本文将介绍QKSMS的特点、功能和优势&am…

一分钟了解自动化测试【建议收藏】

引子 写在最前面&#xff1a;目前自动化测试并不属于新鲜的事物&#xff0c;或者说自动化测试的各种方法论已经层出不穷&#xff0c;但是&#xff0c;能够明白自动化测试并很好落地实施的团队还不是非常多&#xff0c;我们接来下用通俗的方式来介绍自动化测试…… 本文共有2410…

TouchGFX之性能测量

TouchGFX Core开放了几个信号&#xff0c;可用于测量性能。 当这些信号在内部触发时&#xff0c;用户可在应用程序中同步触发单个GPIO&#xff0c;从而实现“渲染时间”和其他有用信号的可视化。 信号在GPIO.hpp中定义 /* 用于操作GPIO的接口类&#xff0c;以便在目标硬件上进…

中通快递邀您参观2024杭州快递物流供应链与技术装备展览会

2024.7.8-10 杭州国际博览中心 科技创新&#xff0c;数字赋能 同期举办&#xff1a;数字物流技术展 新能源商用车及物流车展 电商物流包装展 冷链物流展 展会介绍 深度布局产业集群&#xff0c;加速赋能科技创新2024长三角快递物流展是亚洲范围内超大规模的快递物流业展示平…

plasmo开发浏览器插件MAIN模式的content脚本和普通模式content脚本通讯方案

plasmo是一个很棒的开发浏览器插件的框架&#xff0c;可以使用react和vue等语言开发&#xff0c;也是目前github上star数量最多的开发浏览器插件的框架。 github仓库地址&#xff1a;GitHub - PlasmoHQ/plasmo: &#x1f9e9; The Browser Extension Framework 官网地址&…

每秒批量插入10000条数据到MySQL中,资源消耗(带宽、IOPS)有多少?

文章目录 &#x1f50a;博主介绍&#x1f964;本文内容起因代码资源情况改造 &#x1f4e2;文章总结&#x1f4e5;博主目标 &#x1f50a;博主介绍 &#x1f31f;我是廖志伟&#xff0c;一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、…