1Panel 把站点、容器、数据库和备份操作集中到 Web 面板,应用都以 Docker 容器运行,面板本身相当于 Docker 与 Nginx 的可视化封装。安装前需要先确认系统、架构和网络出口,再决定在线或离线交付方式;后续日常运维由 1pctl 命令行、面板设置与应用商店共同承担。本文以 1Panel v2 文档为边界,已有 v1 实例应单独评估升级路线。
面板选型与设计思路
| 面板 | 风格 | 开源 | 容器化 | 备注 |
|---|---|---|---|---|
| 宝塔(BT) | 传统、功能多 | 部分开源 | 弱 | 国内场景成熟,有付费墙和广告 |
| 1Panel | 现代、Docker 优先 | 开源 | 完整 | 应用商店全部基于 Docker |
| Cockpit | 系统管理向 | 开源 | 弱 | 偏底层运维 |
| CasaOS | NAS 风 | 开源 | 完整 | UI 漂亮,生态偏家用 |
1Panel 的核心思路是所有应用都跑在 Docker 容器里,面板提供容器、Nginx 与证书的统一管理。据此,卸载干净、备份简单,迁移时直接打包 /opt/1panel 数据目录即可。
安装前确认环境
cat /etc/os-release
uname -m
free -h
df -h
ss -lnt系统发行版决定依赖安装方式,CPU 架构决定二进制和镜像能否运行。磁盘预算要包含应用数据、镜像层、日志和备份。可用内存需要扣除现有服务,不能把机器总内存全部分给面板应用。
安装会修改主机配置。已有数据库或容器时,先记录端口、数据目录与恢复方法,避免面板创建的实例与原服务冲突。
在线安装
从官方在线安装文档取得与目标版本对应的安装命令。常用一键脚本:
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/)可以删除,运行不依赖它。
安装结束后,保存实际输出的访问端口和安全入口,不要假设端口或入口路径固定,也不要把安装输出中的初始凭据放进公开笔记。
用以下步骤分层验证:
- 用
1pctl help确认本机管理命令,再查看面板服务状态。 - 用
ss -lntp确认实际监听地址和端口。 - 在服务器本机请求面板,确认应用已响应。
- 从管理终端访问,检查云安全组、主机防火墙和入口路径。
本机能访问而远程超时,优先检查网络路径;收到 HTTP 响应但入口无效,检查实际安全入口和反向代理路径。
离线交付包含哪些内容
离线环境至少需要面板安装包、系统依赖,以及计划部署应用的容器镜像。只复制面板压缩包,应用商店后续拉取镜像仍可能失败。
在联网中转机上按目标系统与 CPU 架构准备材料,记录版本、下载来源及可用的官方校验值。传输前后比较校验值;来自同一非可信下载点的文件和散列只能用于检查传输一致性。
容器镜像可按已确认的镜像引用导出和导入:
# 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 之外,命令行承担主要运维操作。找回登录信息:
# 查看当前登录信息
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 |
数据可选保留 |
完全卸载后验证是否清干净:
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 应用容器,证书管理自动续签。
部署顺序:
- 应用:从应用商店或自定义 Compose 拉起容器,不暴露端口到公网,让它在 Docker 内网监听。
- 网站:在「网站」新建反代站点,把域名指向应用的容器端口。
- 证书:用 DNS API 给该域名签发 SSL 并自动绑定。
这套流程跑通一次之后,新增应用都在同一套模式下完成。
后续维护
更新前保存面板配置、应用定义、数据备份及旧镜像引用。更新后检查登录、应用请求、定时任务和备份恢复。回滚涉及数据库迁移时,要把应用版本与数据版本一起评估,不能只换回旧容器。
面板服务状态、站点状态、数据库状态应分别观察。面板能登录只能证明管理入口可用,站点请求和恢复演练分别验证业务可用性与数据可恢复性。
常见问题与处理
| 现象 | 处理 |
|---|---|
| 面板入口经常被扫描 | 安装时改用自定义端口与安全入口 |
| 修改 daemon.json 未生效 | 改完必须重启 Docker 服务 |
| 备份恢复到新机容器名冲突 | 先停掉同名旧容器再恢复 |
| 升级面板期间应用容器断联 | 1pctl update 只重启面板自身,应用容器不受影响,除非勾选“重启所有容器” |
| OneDrive 备份偶尔失败 | 多为 token 过期,重新授权一次即可 |