Docker命令太多记不住?用Portainer把容器管理变成可视化操作

前言

Docker用久了以后,容器数量、镜像版本、网络配置和数据卷都会慢慢变多。刚开始只需要几条命令就能管理,后面再靠docker psdocker logs和手动复制容器ID,效率就会明显下降。

尤其是在NAS或小型服务器上运行多个服务时,临时查看状态、重启容器、检查日志、确认端口映射,都会变成重复操作。命令行当然足够强大,但对于日常维护来说,一个清晰的Web管理界面往往更适合快速判断问题。

Portainer就是为这类场景准备的Docker可视化管理工具。它可以通过浏览器展示本机Docker环境中的容器、镜像、网络和卷,并提供启动、停止、重启、查看详情等常用操作。对于极空间这类支持Docker的NAS来说,部署Portainer后,就等于给容器环境加了一套更直观的控制台。

不过,Portainer默认部署在内网中。人在家里或同一局域网内访问没有问题,一旦出差、远程办公,或者需要临时查看NAS上的服务状态,就无法直接打开管理界面。要让这套控制台真正随时可用,还需要为9000端口建立公网访问入口。

本文将从极空间开启SSH、确认Docker环境开始,完成Portainer容器部署、初始化登录和基础功能体验。随后再通过 cpolar 创建公网访问地址,并配置固定二级子域名,让Portainer不只在局域网中可用,也能成为一套远程Docker运维入口。

1.在极空间部署Portainer

1.1ssh远程连接到极空间

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

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

1.2验证docker是否开启

使用命令:

lua 复制代码
docker -v 
systemctl status -v

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

1.3安装Portainer

docker命令安装

bash 复制代码
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 也关闭了。实时同步上。

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

1.4 简单使用Portainer

进来先注册用户密码:

注册完要重启容器:

输入重启命令:

arduino 复制代码
docker stop portainer
docker start portainer

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

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

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

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

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

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

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

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

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

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

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

2.安装cpolar

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

❤️以下是安装cpolar步骤:

使用一键脚本安装命令:

arduino 复制代码
sudo curl https://get.cpolar.sh | sh

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

lua 复制代码
sudo systemctl status cpolar

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

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

3.配置公网地址

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

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

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

访问成功。

4.保留固定公网地址

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

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

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

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

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

点击更新

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

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

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

总结

本文围绕开源工具Portainer ,系统讲解了如何通过轻量级Web界面高效管理Docker环境。从一键部署、避开端口冲突(如仅需 9000 端口即可满足大多数场景),到核心功能实操------容器启停、日志查看、镜像构建、卷与网络管理,Portainer极大降低了容器运维门槛。更进一步,结合cpolar内网穿透,轻松实现外网安全访问内网 Portainer,让远程运维、居家办公或跨地域管理变得简单可靠。无论是个人开发者、小型团队,还是资源受限的边缘设备(如树莓派、NAS),Portainer都能以极低开销提供专业级的可视化体验。一句话总结

告别繁琐命令行,用Portainer + cpolar,把Docker运维变成"点一点"的事。

感谢您对本篇文章的喜爱,有任何问题欢迎留言交流。

相关推荐
用户69371750013842 小时前
AI Agent 里的 Loop 到底是什么?
android·前端·后端
Rain的Java大神之路2 小时前
高并发下的抢优惠券如何设计
后端
钟智强2 小时前
AWS CloudGoat 实战:一个 SSRF 如何撬动整个云账户
后端
Ai拆代码的曹操2 小时前
@Transactional 写在 private 方法上,事务根本没生效
后端
云技纵横2 小时前
@Async 默认执行器又炸了:SimpleAsyncTaskExecutor 为什么不是线程池?
后端·面试
程序员Agions2 小时前
Fypro 新手快速上手与实战指南
后端
舒心的云朵2 小时前
用三张图片详解Asp.Net 全生命周期
后端·asp.net
卷无止境2 小时前
C++ 类型转换变迁之路:从隐式转换到 static_cast
c++·后端
孝顺的书包2 小时前
用Asp.net写自己的服务框架
后端·asp.net