首页/新闻资讯/正文详情

NAS 里容器越来越多?用 Portainer 给极空间搭一个可远程访问的 Docker 控制台

发布时间:2026/9/26 15:53:11 来源:云帆数科 栏目:资讯中心
NAS 里容器越来越多?用 Portainer 给极空间搭一个可远程访问的 Docker 控制台
前言极空间里装的 Docker 服务一多我最先烦的不是容器本身而是每次想确认状态都要重新进 SSH看哪个容器还在跑、端口映射到哪里、哪个服务刚刚停了、数据卷有没有挂对命令当然都能查但频率一高就会变成重复劳动。Portainer 对我真正有吸引力的地方不是“以后再也不用命令行”而是先把这些高频管理动作集中到一个 Web 页面里需要深入排障时我仍然可以回终端继续处理。尤其 NAS 里的服务越堆越多以后我更希望先有一张总览先判断是哪一个容器、哪一个端口、哪一个挂载出了问题再决定要不要继续往底层查。这次我在极空间上直接通过 SSH 部署 Portainer沿用9000:9000、/var/run/docker.sock和portainer_data:/data这套配置。第一次进入页面后创建管理员账户再按现有流程重启容器随后从local环境查看本机 Docker 服务、启停容器和查看详细状态。局域网确认没问题以后再安装 cpolar把本地9000页面先通过随机地址开放出去最后切换到固定二级子域名porr。整篇我会把“Portainer 管什么”“Docker Socket 为什么重要”和“公网入口只解决什么问题”分开说明不把图形界面写成零门槛也不把公网可访问直接等同于安全无忧。1. Portainer 更像 Docker 的“可视化操作层”Docker 命令行本身并不难。真正麻烦的是服务一多以后高频操作开始变碎看容器是否运行启动、停止某个服务查看当前端口确认挂载看容器详细状态管理镜像、网络和数据卷。Portainer 的价值就在于把这些动作集中到一个 Web 页面里。我更愿意把它理解成Docker 负责真正运行容器Portainer 负责把这些管理动作可视化。所以它不是替代 Docker而是给 Docker 再加一层更直观的入口。2. 先通过 SSH 进入极空间先在极空间中开启SSH 服务然后在 Windows PowerShell 或 Mac Terminal 里登录sshrootIP这里的IP替换成自己极空间的实际地址。后面的 Docker 命令都在 SSH 终端里执行。3. 先确认 Docker 环境执行docker-vsystemctl status-v这里docker -v用于确认 Docker 命令是否可用。另一条是systemctl status -v如果这条命令返回的内容并不是预期的 Docker 服务状态先结合当前系统真实的服务名继续确认不要只因为一条状态命令看起来异常就直接判断 Docker 没启动。只要极空间里的 Docker 本身正常后面就可以继续部署 Portainer。4. 一条 Docker 命令启动 Portainer执行dockerrun-d\-p9000:9000\--nameportainer\--restartalways\-v/var/run/docker.sock:/var/run/docker.sock\-vportainer_data:/data\portainer/portainer这条命令里有几个关键参数。端口9000:9000也就是说后面浏览器通过极空间主机的9000端口进入 Portainer。容器名portainer后续停止和启动容器时都会继续使用这个名字。重启策略--restartalways表示 Docker 服务恢复以后Portainer 会按照这个策略继续启动。Docker Socket/var/run/docker.sock:/var/run/docker.sock这是 Portainer 能直接看到并管理当前 Docker 环境的关键挂载。也因为这一点Portainer 不是普通的“信息展示页”。它拿到的是 Docker 管理入口所以管理员账户和远程访问范围都值得认真处理。数据卷portainer_data:/dataPortainer 自己的配置和账户相关数据通过这个 volume 保存在/data。5. 先确认局域网页面能打开部署完成以后在浏览器访问http://极空间IP:9000看到登录界面以后先不要急着往公网开放。这一步只说明极空间 Docker → Portainer 容器 →9000→ 局域网浏览器已经跑通。6. 第一次进入先创建管理员账户首次进入需要注册用户和密码。这里我会把管理员密码单独设置好。因为这个账户后面能直接管理本机 Docker 容器不适合使用过于简单、和其他服务重复的密码。按照当前流程注册完成以后还需要重启 Portainer 容器。执行dockerstop portainerdockerstart portainer重启完成以后再回到浏览器。重新输入账户密码。这时就可以正式进入 Portainer。7. 进入 local 环境先看清本机 Docker进入以后选择local环境。这里会展示当前本机 Docker 的详细信息。对我来说这一步就是 Portainer 最省事的地方先看全局再决定要不要进终端。如果只是确认哪个容器正在运行、端口和状态是什么直接从这里看会更快。8. 容器启停可以直接在页面操作进入容器列表以后就可以看到本地服务。页面可以直接控制容器启停。这类操作在命令行里当然也能完成。但如果只是临时停一个服务、重启一次容器我更愿意先在 Portainer 里处理。这样不用每次都回忆容器名和命令参数。9. 详细状态也能继续往里看点击对应容器以后还可以继续查看详细状态。这里适合快速确认当前容器状态端口挂载运行参数其他容器细节。如果发现配置和预期不一致再回 SSH 终端继续排查。所以我的习惯不是 GUI 和 CLI 二选一而是Portainer 先定位命令行再深挖。10. 为什么远程访问 Portainer 要比普通网页更谨慎在局域网里使用时http://极空间IP:9000已经够了。但人在外面临时需要看容器状态、重启服务时局域网地址无法直接访问。这里再加入 cpolar。cpolar 在这套方案里只负责把已经运行在9000的 Portainer Web 页面提供到公网。它不管理 Docker也不会代替 Portainer 读取容器状态。而且 Portainer 本身挂载了 Docker Socket所以这个公网入口对应的是一个真正具备管理能力的后台页面。这一点和普通博客、静态导航页完全不同。11. 在极空间安装 cpolar执行sudocurlhttps://get.cpolar.sh|sh安装完成以后检查服务状态sudosystemctl status cpolar服务正常后通过主机 IP 9200进入 cpolar Web UI。页面中的入口写成http://ip:9200对应超链接目标为http://localhost:9200/登录以后开始配置 Portainer 隧道。12. 先创建随机公网地址进入隧道管理 → 创建隧道当前参数为隧道名称Portainer协议http本地地址9000域名类型随机域名地区China Top这里本地地址和前面的 Docker 宿主机端口保持一致9000创建完成以后进入在线隧道列表。复制生成的公网地址从外部设备访问。Portainer 登录页面可以正常打开。这一层验证的是外部浏览器 → cpolar 公网地址 → 极空间9000→ Portainer Web。13. 长期使用再换固定二级子域名随机地址更适合第一次确认链路。如果以后经常需要从外部进入 Portainer再继续配置固定二级子域名。进入 cpolar 的预留页面。选择保留二级子域名当前参数是地区china Top二级子域名porr二级子域名具有唯一性。这里的porr只是当前示例真正使用时以自己账号中实际预留成功的名称为准。14. 把固定域名绑定回 Portainer 隧道回到隧道管理 → 隧道列表找到对应的 Portainer 隧道。编辑以后修改域名类型二级子域名Sub Domain填写前面预留成功的二级子域名地区China Top。点击更新。更新以后查看在线隧道列表。随机地址已经切换成固定二级子域名。最后再从其他设备访问。Portainer 页面仍然可以正常打开。15. 我会怎么判断这套 Portainer 真正可用我不会只看首页是否出现。至少会确认四层。第一层Docker。极空间自己的 Docker 环境正常。第二层Portainer。9000页面可以打开管理员账户可以正常登录。第三层管理能力。local环境能看到本机 Docker容器启停和详细状态可以正常查看。第四层远程入口。cpolar 随机地址和固定二级子域名都能进入 Portainer。这样以后远程页面打不开时也能更快判断问题到底出在 Docker、Portainer、账户还是网络入口。总结这次真正跑通的主线是极空间 → SSH → Docker →portainer/portainer→9000:9000→/var/run/docker.sock→portainer_data:/data→ 管理员账户 → 重启 Portainer →localDocker 环境 → 容器启停 / 详细状态 → cpolar →9000随机公网 → 固定二级子域名porr。几个细节需要继续留意Docker 检查命令里保留systemctl status -v如果结果异常先确认当前系统真正对应的服务名当前镜像写的是portainer/portainer没有额外版本标签portainer_data:/data用来保存 Portainer 自身数据/var/run/docker.sock:/var/run/docker.sock让 Portainer 具备直接管理 Docker 的能力因此公网开放这个页面时要重视管理员账户和访问范围注册管理员以后当前流程要求执行docker stop portainer和docker start portainercpolar 只负责把9000页面提供到公网不参与 Docker 容器管理固定二级子域名示例继续使用porr地区保留China Top / china Top。对我来说Portainer 真正省下来的不是“学 Docker 命令”的时间而是那些每天都要重复做的状态确认和基础操作。命令行仍然保留在后面复杂问题照样能深入但日常管理先有一个清楚的总览极空间里的容器越多这种差别就越明显。

相关推荐

品优购HTML电商项目实战:静态页面如何撑起毕业设计
品优购HTML电商项目实战:静态页面如何撑起毕业设计

简介:这是一份基于HTML品优购电商项目的完整前端源码与毕业设计资料,面向网页前端初学者、电商模板设计者及需要完成课程设计或毕业设计的大学生。资源以纯静态HTML页面呈现,涵盖首页、列表页、商品详情页、购物车、登录注册、订单等全套商城… · 2026/9/26 15:53:04

南昌县商业装修机构选择指南:美欧装饰全包服务靠谱商家测评排名
南昌县商业装修机构选择指南:美欧装饰全包服务靠谱商家测评排名

南昌装修市场从来不缺做商业装修的商家,但要找到一家兼顾合规安全、交付稳定、报价透明的靠谱机构,着实需要花不少心思。不少南昌县找商业装修的业主,都有过这样的糟心经历:找了小型装修队,工程层层转包,工… · 2026/9/26 15:52:52

新疆GEO优化推广怎么做:云景科技客户口碑力荐
新疆GEO优化推广怎么做:云景科技客户口碑力荐

新疆云景网络科技有限公司2015年3月25日在乌鲁木齐正式创立,是扎根西北、覆盖全国多省份的全域数智整合营销服务商,专注为各行业客户提供全链路营销解决方案,以官方直签的全平台广告代理资质、十余年本土深耕的运营经验、短期流量获客长期品牌… · 2026/9/26 15:52:52

SpringBoot+Vue火锅文化网站开发实战:从数据库设计到前后端部署
SpringBoot+Vue火锅文化网站开发实战:从数据库设计到前后端部署

1. 火锅文化网站到底要做什么:功能模块与系统边界 说实话,这个题目乍一看是个"课程设计标准款",但真正动手做的时候你会发现,火锅文化网站和普通的CRUD管理系统完全是两码事。我最初接手这个项目时以为就是"菜品增… · 2026/9/26 20:23:22

SpringBoot+Vue医学电子技术课堂管理系统:源码拆解与实践指南
SpringBoot+Vue医学电子技术课堂管理系统:源码拆解与实践指南

作为做过好几个前后端分离管理系统的人,我对“基于SpringBootVue的XX管理系统”这类项目太熟悉了。尤其是这次这个医学电子技术课堂管理系统,它不是那种随便糊弄的CRUDdemo,而是把教学管理、在线学习、实验环节都串起来的完整业务闭环。我拿到… · 2026/9/26 20:23:22

ffmpeg.js 浏览器端视频转码实战:原理、避坑与进阶
ffmpeg.js 浏览器端视频转码实战:原理、避坑与进阶

简介:这是一套专供浏览器端使用的 FFmpeg 封装工具包,基于 ffmpeg.js 实现,开发者无需搭建任何后端服务,就能在网页中直接完成视频转码、格式封装、解复用等常见多媒体处理任务,适合前端工程师或全栈开发者快速集成音视… · 2026/9/26 20:23:22

UE3老游戏画质改造:从引擎配置到Reshade注入的完整方法论
UE3老游戏画质改造:从引擎配置到Reshade注入的完整方法论

1. 这不是“一键高清”,而是对UE3引擎底层渲染管线的外科手术式干预 你在网上搜到的那些“X战警金刚狼前传画质增强补丁”,十有八九是把几个Reshade预设文件打包扔进游戏目录,再附上一张对比图——左边模糊、右边锐利,标题写着“画… · 2026/9/26 20:23:22

Kubernetes Agent CLI工具ax:基于gRPC的集群智能体调度实践
Kubernetes Agent CLI工具ax:基于gRPC的集群智能体调度实践

1. 从"ax"这个标题说起:一个被低估的Kubernetes Agent CLI工具第一次看到"ax"这个标题的时候,我脑子里蹦出来的第一反应是"这名字也太短了"。但结合后面跟着的一串热词——Kubernetes、agent、CLI、gRPC——我大概能猜到&… · 2026/9/26 20:23:22

从Excel到DeskcommCRM:销售团队客户管理落地实践与避坑指南
从Excel到DeskcommCRM:销售团队客户管理落地实践与避坑指南

做业务这行,谁没被客户资料折磨过?微信聊天记录里翻客户地址、Excel表里好几个版本来回发、离职同事带走一摞名片公司根本不知道。我前几年带销售团队的时候,光是一个“客户到底谁在跟进”的问题,就开了不下十次会议。 后来把客户… · 2026/9/26 20:23:15

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码