部署与运维

1Panel 面板:安装、维护与日常管理

1Panel 把站点、容器、数据库和备份操作集中到 Web 面板,应用以 Docker 容器运行。本文覆盖安装前环境确认、在线安装与离线交付、1pctl 命令行、日常安全管理与应用部署,以 1Panel v2 文档为边界。

1Panel 把站点、容器、数据库和备份操作集中到 Web 面板,应用都以 Docker 容器运行,面板本身相当于 Docker 与 Nginx 的可视化封装。安装前需要先确认系统、架构和网络出口,再决定在线或离线交付方式;后续日常运维由 1pctl 命令行、面板设置与应用商店共同承担。本文以 1Panel v2 文档为边界,已有 v1 实例应单独评估升级路线。

面板选型与设计思路

面板 风格 开源 容器化 备注
宝塔(BT) 传统、功能多 部分开源 弱 国内场景成熟,有付费墙和广告
1Panel 现代、Docker 优先 开源 完整 应用商店全部基于 Docker
Cockpit 系统管理向 开源 弱 偏底层运维
CasaOS NAS 风 开源 完整 UI 漂亮,生态偏家用

1Panel 的核心思路是所有应用都跑在 Docker 容器里,面板提供容器、Nginx 与证书的统一管理。据此,卸载干净、备份简单,迁移时直接打包 /opt/1panel 数据目录即可。

安装前确认环境

bash5 行
cat /etc/os-release
uname -m
free -h
df -h
ss -lnt

系统发行版决定依赖安装方式,CPU 架构决定二进制和镜像能否运行。磁盘预算要包含应用数据、镜像层、日志和备份。可用内存需要扣除现有服务,不能把机器总内存全部分给面板应用。

安装会修改主机配置。已有数据库或容器时,先记录端口、数据目录与恢复方法,避免面板创建的实例与原服务冲突。

在线安装

从官方在线安装文档取得与目标版本对应的安装命令。常用一键脚本:

plaintext1 行
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh

先下载脚本,检查下载地址、依赖和将要创建的服务,再执行。脚本关键参数:

参数 建议值 说明
安装目录 /opt(默认) 迁移时按此目录定位
端口 随机 5 位数 避开默认 8090,扫描脚本会先探测它
安全入口 随机 8 位字符串 入口不正确时直接返回 404
用户名 自定义 不要用 admin/root
密码 16 位以上强密码 避免生日、拼音等弱口令

安全入口和强密码构成面板抵御自动化扫描的第一道防线,不要为省事使用弱配置。

安装过程实际做的工作:安装 Docker 与 Compose、复制 1panel 到 /usr/bin/1panel、复制 1pctl 到 /usr/local/bin/1pctl、创建 /etc/systemd/system/1panel.service 并启用、初始化 /opt/1panel 数据目录、输出访问地址与凭据。

主要目录:

路径 用途
/usr/bin/1panel 主程序二进制
/usr/local/bin/1pctl 命令行工具
/etc/systemd/system/1panel.service systemd 单元
/opt/1panel 核心数据目录,迁移时备份它
/opt/1panel/apps/<应用名> 各应用的容器数据卷

安装时解压产生的临时目录(形如 /root/1panel-vX.X.X-lts-linux-amd64/)可以删除,运行不依赖它。

安装结束后,保存实际输出的访问端口和安全入口,不要假设端口或入口路径固定,也不要把安装输出中的初始凭据放进公开笔记。

用以下步骤分层验证:

  1. 用 1pctl help 确认本机管理命令,再查看面板服务状态。
  2. 用 ss -lntp 确认实际监听地址和端口。
  3. 在服务器本机请求面板,确认应用已响应。
  4. 从管理终端访问,检查云安全组、主机防火墙和入口路径。

本机能访问而远程超时,优先检查网络路径;收到 HTTP 响应但入口无效,检查实际安全入口和反向代理路径。

离线交付包含哪些内容

离线环境至少需要面板安装包、系统依赖,以及计划部署应用的容器镜像。只复制面板压缩包,应用商店后续拉取镜像仍可能失败。

在联网中转机上按目标系统与 CPU 架构准备材料,记录版本、下载来源及可用的官方校验值。传输前后比较校验值;来自同一非可信下载点的文件和散列只能用于检查传输一致性。

容器镜像可按已确认的镜像引用导出和导入:

bash5 行
# PANEL_APP_IMAGE 为已经拉取并核对的平台应用镜像
: "${PANEL_APP_IMAGE:?设置已核对的应用镜像引用}"
docker image save "$PANEL_APP_IMAGE" -o panel-app-image.tar
# 在离线目标机执行
docker image load -i panel-app-image.tar

镜像包不包含数据库内容和挂载卷。应用备份要单独转移,并验证数据库版本与恢复方式。离线包支持范围和执行入口以对应版本官方交付说明为准。

命令行工具 1pctl

UI 之外,命令行承担主要运维操作。找回登录信息:

plaintext5 行
# 查看当前登录信息
1pctl user-info

# 重置入口和验证码限制(不会清空数据)
1pctl reset

服务管理:

操作 命令 说明
查看状态 1pctl status core 检查面板是否在跑
启动 1pctl start core
停止 1pctl stop core
重启 1pctl restart core
改用户名 1pctl update username
改密码 1pctl update password
在线升级 1pctl update
卸载面板 1pctl uninstall 数据可选保留

完全卸载后验证是否清干净:

plaintext6 行
1pctl uninstall

# 验证结果
ps aux | grep 1panel
systemctl status 1panel
which 1pctl

卸载时按提示选择是否清掉 /opt/1panel 数据:将来可能复用则保留,做彻底清理则删除。

日常管理:安装后必做事项

装完面板先完成基础安全与备份配置,再开始部署应用。

开启双因素认证:面板设置 → 安全 → 双因素认证,用认证器 App 扫码绑定。面板暴露在公网时,这是最重要的一道防线。

配置备份账号:面板设置 → 备份账号 → 添加。1Panel 内建支持多种后端:

后端 适合场景
OneDrive 个人使用,起步容量可用
Cloudflare R2 / Backblaze B2 / 七牛 容量大、成本低
WebDAV(如 InfiniCLOUD / Koofr) 自托管或免费空间
SFTP 另一台 VPS 做冷备

建议配置至少两个后端:一个云盘便于查找文件,一个对象存储做便宜冷备。

配置 DNS 账户用于自动证书:证书 → DNS 账户,填入 Cloudflare API Token 或域名厂商 API Key,之后 SSL 证书可自动 DNS 验证与自动续签,无需手动执行 acme 脚本。

防火墙白名单:主机 → 防火墙,只开放需要的端口:

端口 是否开放 说明
22(或自定义 SSH 端口) 仅限管理 IP 配合改端口与 fail2ban
80 / 443 全开 Web 服务
1Panel 端口 仅限管理 IP 只允许家庭 IP 或跳板机
其他应用端口 一律走反代 应用端口不直接暴露

应用商店常用应用:容器化商店按需安装,装的时候不要勾“暴露端口”,统一通过面板的网站功能反向代理出去。常用项包括 Nginx Proxy / OpenResty(反代与 SSL 入口)、MySQL / Redis(开发用)、Uptime Kuma(监控站点存活)、filebrowser(临时文件分发)。

应用部署的标准流程

1Panel 的设计采用「应用 → 网站 → 证书」三层分离:浏览器经面板托管的 Nginx 反向代理访问各 Docker 应用容器,证书管理自动续签。

部署顺序:

  1. 应用:从应用商店或自定义 Compose 拉起容器,不暴露端口到公网,让它在 Docker 内网监听。
  2. 网站:在「网站」新建反代站点,把域名指向应用的容器端口。
  3. 证书:用 DNS API 给该域名签发 SSL 并自动绑定。

这套流程跑通一次之后,新增应用都在同一套模式下完成。

后续维护

更新前保存面板配置、应用定义、数据备份及旧镜像引用。更新后检查登录、应用请求、定时任务和备份恢复。回滚涉及数据库迁移时,要把应用版本与数据版本一起评估,不能只换回旧容器。

面板服务状态、站点状态、数据库状态应分别观察。面板能登录只能证明管理入口可用,站点请求和恢复演练分别验证业务可用性与数据可恢复性。

常见问题与处理

现象 处理
面板入口经常被扫描 安装时改用自定义端口与安全入口
修改 daemon.json 未生效 改完必须重启 Docker 服务
备份恢复到新机容器名冲突 先停掉同名旧容器再恢复
升级面板期间应用容器断联 1pctl update 只重启面板自身,应用容器不受影响,除非勾选“重启所有容器”
OneDrive 备份偶尔失败 多为 token 过期,重新授权一次即可
← 返回文章