1Panel + Docker:面板和 compose 怎么配合

装了 1Panel 还要学 compose 吗?小够聊聊面板和命令行的分工:应用商店装常用应用,compose 管自定义需求,备份监控联动,面板本身的安全设置,以及什么时候可以不用面板。

我是小够,只推够用的 VPS。

这个月前面都在讲命令行玩 Docker,肯定有人问:我装了 1Panel,面板里点点鼠标就能装应用,还学 compose 干嘛?小够的答案是:都要会,但分工不同。

1Panel 擅长什么

1Panel(FIT2CLOUD 出品的开源面板,截至撰写时更新很活跃)内置了应用商店:WordPress、MySQL、Redis 这些,点一下就装好,端口、数据卷、域名都帮你配了。对于"我就想快速把博客跑起来"的人,这是最短路径,比手写 compose 快十分钟。

面板还顺手管了:网站备份(一键+定时)、SSL 证书一键申请和续期、防火墙、定时任务、监控告警、文件管理。一台 VPS 的日常运维,面板覆盖了八成。1Panel 本身也是容器化部署的,装完它你其实已经在用 Docker 了,只是没感觉到。

什么时候还得用 compose

应用商店没有你想要的应用时。比如你要跑个小众的监控(Uptime Kuma 应用商店有,但更新可能慢半拍)、自己写的 Node 服务、Portainer 这种管理工具,面板帮不上忙,就得自己写 compose 文件。

小够的 workflow:

  1. 常用应用走面板:WordPress、数据库这种标准化的,面板装,省时间。
  2. 自定义需求写 compose:自己的项目、小众应用,手写 docker-compose.yml 放 ~/apps/ 下。
  3. 两者别管对方的地盘:面板装的应用,用面板启停;自己写的 compose,用命令行管。混着管容易乱——面板不知道你手动改了什么,你也不知道面板改了什么,出问题互相甩锅。

别打架:端口和网络

唯一要注意的是端口冲突。面板装的 OpenResty 占了 80/443,你自己写的 compose 就别再映射 80。规划一下:

  • 面板的应用:用面板的反代统一管 80/443,域名都在面板里配。
  • 自己的 compose 服务:映射到高位端口(如 8080、3000),再由面板的 OpenResty 反代转发过去。

这样 80/443 只有一个主人,证书、反代规则都在面板里统一管,不乱。

数据卷也分开:面板的应用数据走面板的备份计划,你自己的 compose 数据自己写备份脚本(本月备份那篇的方法通用)。备份策略别重叠也别漏,列个表写清楚哪个数据谁负责:

数据谁备份怎么备
面板装的 WordPress面板定时备份面板里配
自己 compose 的应用自己backup.sh + cron
面板本身配置面板面板备份功能

面板本身的安全

面板是 VPS 的大门,门锁得配好:

  1. 改默认端口:1Panel 默认端口改成不常见的,别用默认的。
  2. 强密码 + 2FA:面板后台开两步验证,密码用密码管理器生成 20 位以上。
  3. 别暴露到公网:能只监听内网+SSH 转发就别公网开。实在要公网开,配 HTTPS 和 IP 白名单,只放行自己的 IP。
  4. 及时更新:面板有更新提示就升,面板本身的漏洞等于整台机器的漏洞。更新前先备份,这是铁律。
  5. 入口加固:面板登录页可以设安全入口(随机路径),机器人扫不到登录页,爆破都无从下手。

监控告警联动

1Panel 自带监控:CPU、内存、磁盘、流量,设个阈值告警,超了发邮件或 TG 通知。配合本月资源限制那篇:面板里能看到哪个容器在吃资源,点进去就能限制或重启。命令行 docker stats 和面板监控是互补的,两个都会看。

建议设的告警线:CPU 持续 80%+、内存 85%+、磁盘 80%+。磁盘告警尤其重要,呼应日志那篇——磁盘满是渐进式的,早发现早处理。

什么时候可以不用面板

反话也说一句:如果你已经能熟练写 compose、配 Nginx、管备份,面板对你就是多一层开销。1Panel 本身占几百 MB 内存,1 核 1G 的小机器能省则省。大佬们都是裸 Docker + 命令行,面板是给"我想省时间"的人准备的,不是必须品。

小够的判断标准:你花在学面板上的时间,省回来了吗? 如果你一年就装两次应用,学面板不如学三条 docker 命令。如果你三天两头折腾新应用,面板值回票价。

学到什么程度

小够给新手的路线:先用面板把网站跑起来,有成就感;再学 compose 理解原理;最后按需混搭。面板是效率工具,不是智商税——1 核 2G 的机器跑 1Panel 完全够用,面板本身的开销不大。

但别只会点鼠标:面板哪天出 bug,你还得会看 docker ps、docker logs 定位问题。这个月的内容就是干这个的。面板让你跑得快,命令行让你摔倒了爬得起来。两者都会,才算真会玩 VPS。