雨云搭建 Portainer 管理 Docker 容器

用雨云 KVM 云服务器部署 Portainer:可视化管理 Docker 容器、镜像、卷与 compose 栈
发布于 更新于
18

前面部署的 Jellyfin、Immich、Vaultwarden 一堆容器,状态全靠 docker ps 一条条敲;想看哪个容器日志要拼命令,改个端口映射得先 stop 再 edit 再 up。Portainer 是 Docker 官方社区最活跃的可视化管理面板:容器、镜像、卷、网络、compose 栈一个界面看全,点几下就能启停、看日志、改配置。本文用雨云 KVM 云服务器把 Portainer 跑起来,统一管理那些自建服务。

为什么选 Portainer

命令行管 Docker 没问题,但容器多了之后「哪个对应哪个服务、挂在哪块盘、暴露哪个端口」全在脑子里。Portainer 把这些信息可视化:

  • 一览无余:所有容器运行状态、占用、端口映射、挂载卷,一个列表看清;
  • 零命令操作:启停、重启、看实时日志、进终端、改环境变量,点界面就行;
  • Stack(栈):直接粘贴 docker-compose 部署多容器应用,和手敲命令等价但更直观;
  • 多节点(进阶):装 Edge Agent 后能在一个面板管好几台机器的 Docker。

它不替代之前部署的应用,而是给它们一个「控制台」。前面 JellyfinImmich 这些容器,装好 Portainer 后都能在界面里看到、点开就能管。

服务器与部署

Portainer 自己就是个容器,雨云 KVM(官网入口)Debian 12 + Docker,下单优惠码填 admin01 五折,7 天无理由退款。没用过雨云的先看 选购与上手指南

docker volume create portainer_data
docker run -d -p 9443:9443 --name portainer 
  --restart=unless-stopped 
  -v /var/run/docker.sock:/var/run/docker.sock 
  -v portainer_data:/data 
  portainer/portainer-ce:latest

两个关键点:

  • 必须挂 /var/run/docker.sock:Portainer 通过 Docker 守护进程套接字管理本机容器,不挂就管不了;
  • 用 9443 而非 9000:新版默认走 HTTPS(9443),首次访问 https://服务器IP:9443 设管理员密码。若坚持用 9000 明文端口,务必套反代 + HTTPS,别裸奔在公网。

Nginx 反代 9443、配 HTTPS 是最稳的正式用法;临时测试才直连 IP。

日常使用姿势

  • 看日志:点容器 → Logs,实时滚动,排错不用 docker logs -f 拼命令;
  • 改配置:容器 → Editor 直接改环境变量/端口,Apply 即重建;
  • 部署新应用:Stacks → 粘贴 docker-compose,Deploy 一键起栈,和命令行 docker compose up 等价;
  • 管理卷与网络:Volumes、Networks 页看清楚每个容器挂载了哪块盘,删容器前先确认数据卷没被误清。

踩坑记录

  • 忘了挂 docker.sock:只挂了 data 卷、没挂 sock,Portainer 起来却一个容器都看不到。补上 -v /var/run/docker.sock:/var/run/docker.sock 重跑即可。
  • 9443 打不开:浏览器用 http 访问 9443 会被拒,必须用 https;部分环境要在防火墙放通 9443。
  • 升级前没备份 data 卷:Portainer 的配置全在 portainer_data 卷里,升级镜像前先备份这个卷,否则自定义设置会丢。
  • 多节点 Agent 暴露公网:Edge Agent 的隧道端点若裸奔,等于把其他机器的 Docker 控制权交出去。多节点场景务必走内网或带认证的加密通道。

合规提醒

Portainer 拥有本机 Docker 的完整管理权限,等同于服务器 root 级操作能力。请设置强管理员密码、启用 HTTPS、限制访问来源 IP;多节点 Agent 不得暴露于不可信网络。依据《网络安全法》《数据安全法》,管理平台本身的访问权比单个应用更需最小权限与审计。

小结

容器一多,命令行就不够看了。Portainer 用 1 核 1G 的代价给所有 Docker 应用装上「仪表盘」:状态、日志、配置、栈一目了然,启停改参点几下完成。雨云 KVM 1 核 1G 起步足矣,优惠码 admin01 五折——把之前散落的 Jellyfin、Immich、Vaultwarden 收进一个面板,运维从「敲命令」变成「看一眼」。

常见问题(FAQ)

Portainer 和命令行 docker 有什么不同?
功能等价,Portainer 只是把容器、镜像、卷、网络、compose 栈做成可视界面:点开看实时日志、改环境变量、启停容器、粘贴 compose 一键部署栈,省去记命令。底层还是同一个 Docker 守护进程。
必须挂载 docker.sock 吗?
管本机容器就必须挂 /var/run/docker.sock,否则 Portainer 起来却看不到任何容器。挂了 sock 等于给了它本机 Docker 的完全控制权,所以务必设强密码、启用 HTTPS、限制访问来源。
为什么用 9443 而不是 9000?
新版 Portainer 默认 9443 走 HTTPS,首次访问即设管理员密码,比 9000 明文端口安全。生产环境建议反代 9443 配正式证书,别把管理面板裸奔在公网。
雨云优惠码 admin01 怎么用?
雨云下单页优惠码/推广码输入框填 admin01 即享五折,以结算页显示为准。Portainer 自身极轻量,1 核 1G 套餐足够统管其他容器,支持 7 天无理由退款,可先低配试跑。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600

用雨云 KVM 云服务器部署 Cockpit 管理整台服务器:Web 看 CPU/磁盘/网络曲线、启停 systemd 服务、配 firewalld 防火墙、看日志与 Web 终端,与 Portainer 分层互补,含优惠码 admin01

用雨云 KVM 云服务器部署 Watchtower 自动更新 Docker 容器:标签模式精确控制更新范围、定时检查、shoutrrr 通知、清理旧镜像,与 Portainer 手动管控互补,含优惠码 admin01 五折。