前言

Docker 日常运维里,docker ps、docker logs、docker exec 这些命令估计每个人都离不开。但容器数量多了之后,纯命令行的效率就开始吃力——你要记一堆容器 ID、卷名称、网络模式,排查问题要反复 grep 日志,多台主机之间跳来跳去更是噩梦。这种场景下,一个图形化界面能省大量精力。

Portainer 就是解决这个问题的工具。它是一个轻量级的开源 Docker 可视化管理界面,安装就一条命令,资源占用极低,树莓派上都能跑。装完之后,容器启停、日志查看、镜像管理、网络配置,全部点点鼠标完成,不用再背命令参数。界面响应速度快,操作结果直接反馈,所见即所得。适合谁用:不想每次都查文档敲命令的运维人员、小团队没有专职 DevOps 的开发者、以及NAS 或家用服务器想要更直观管理体验的用户。

image-20251226150509958

1.在极空间部署Portainer

1.1ssh远程连接到极空间

  • 开启【SSH 服务】
  • 使用终端(Windows PowerShell / Mac Terminal)登录:
ssh root@IP

没有ssh的小伙伴可以参考cpolar官网这篇文章:《极空间别再吃灰了!开启SSH,秒变全能服务器!》

957c00e3b3f0ce8aa95df96aa41b8715

1.2验证docker是否开启

使用命令:

docker -v 
systemctl status -v

没有docker的小伙伴可以参考cpola官网这篇文章:《极空间开箱实录:从拆箱到远程访问保姆级教程,30分钟上手!》

image-20251017103712618

1.3安装Portainer

docker命令安装

docker run -d \
  -p 9000:9000 \
  --name portainer \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer

–restart=always 表示和 Docker 容器一样,当 Docker 重启了 Portainer 也重启,当 Docker 关闭了,Portainer 也关闭了。实时同步上。

5322a892eef23ef073080050e16f60f3

在浏览器中输入 http://极空间IP:9000 就能看到登录界面:

image-20251226151210573

1.4 简单使用Portainer

进来先注册用户密码:

image-20251226151621690

注册完要重启容器:

image-20251226152013099

输入重启命令:

docker stop portainer
docker start portainer

重启后,再次输入账户密码,启动成功:

image-20251226152329722

再次输入账户密码,即登录成功:

image-20251226152238192

选择local选项卡后本地docker详细信息展示:

image-20251226152541319

image-20251226152556607

在这里,我们就可以操控我们本地的服务啦~

image-20251226152759270

操控它的启停状态等,是不是很方便~

image-20251226152819847

点击这里,还能详细看它的状态:

image-20251226153114878

image-20251226153126289

image-20251226153512404

在企业或家庭环境中,我们常常将Portainer 部署在内网服务器或NAS上,用于集中管理Docker容器。然而,一旦离开本地网络——比如在家办公、出差途中,就无法直接访问这个强大的可视化运维界面。

传统的远程方案(如公网IP、端口映射、VPN)往往配置复杂、存在安全风险,或受限于网络环境。而cpolar作为一款轻量级内网穿透工具,恰好能优雅地解决这一痛点:

无需公网IP、无需改路由器、无需暴露整个服务器,只需一条命令,就能将Portainer的Web界面通过加密 HTTPS 隧道安全暴露到公网。

从此,无论你在咖啡馆、高铁还是家中,只要打开浏览器,输入cpolar提供的专属链接,即可像在局域网一样,实时管理你的容器、查看日志、部署服务——真正实现 “随时随地,掌控你的Docker”

本文将继续演示如何用cpolar快速打通内外网,让Portainer成为你口袋里的运维控制台。

2.安装cpolar

cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。

❤️以下是安装cpolar步骤:

使用一键脚本安装命令:

sudo curl https://get.cpolar.sh | sh

e464b045413a024674a93ea472511b0f

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

aa03713b56d9eef12a4da6b99d2e46ac

Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。

3af79ad708cc47c5bbea0b63c2c7230d

3.配置公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:Portainer,注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:9000
  • 域名类型:随机域名
  • 地区:选择China Top

image-20251226153623504

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。

image-20251226154031051

访问成功。

image-20251226154051983

4.保留固定公网地址

使用cpolar为其配置二级子域名,该地址为固定地址,不会随机变化。

image-20250918151358733

点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是porr,大家可以自定义。填写备注信息,点击保留。

image-20251226154229559

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

image-20251226154555910

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20251226154622456

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

image-20251226154646408

最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。

image-20251226154733704

这样我们就可以随时随地管理我们docker容器啦!

总结

Portainer 配合 cpolar 穿透这套组合,适合需要远程管理 Docker 环境的场景。Portainer 本身解决的是"管理效率"问题,cpolar 解决的是"远程可用"问题,两者接上之后,在外面打开浏览器就能管家里或公司的容器,不用开 VPN 也不用配复杂网络。部署本身很快,Portainer 一条 docker run,cpolar 隧道几分钟配好,配一次之后每次出门在外都能直接用。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐