首页
/ 1Panel 全面解析:开源 Linux 服务器运维面板与轻量级 AI 管理平台的核心能力与源码架构

1Panel 全面解析:开源 Linux 服务器运维面板与轻量级 AI 管理平台的核心能力与源码架构

2026-09-05 18:34:49作者:昌雅子Ethen

本文以 1Panel 官方中文 README(docs/README.zh-Hans.md)为主体,解读这款现代化、开源的 Linux 服务器运维管理面板的产品定位、六大核心能力、快速开始方式,并结合仓库中 agent/core/frontend 三个模块的真实源码与配置文件,说明其前后端分离架构、一键安装与源码构建流程、API 接入方式和“Metal-to-Agent”全栈 AI 管理的具体落地方式。读完本文,你能独立安装部署 1Panel、从源码层面理解其双进程(core + agent)设计,并掌握通过 Makefile 从源码构建面板的完整命令。

什么是 1Panel?

1Panel 是一款现代化的开源 Linux 服务器运维管理面板,同时也是轻量级的 AI 管理平台。通过直观易用的 Web 界面,1Panel 帮助用户轻松掌控服务器全局:无论是 AI 智能体与本地大模型,还是网站、数据库、容器、文件及计划任务,所有核心运维场景均能一站式高效管理。官方 README 将其核心特性归纳为六点:

  • 全栈 AI 管理:提供从底层硬件到智能体(Metal-to-Agent)的统一管理平台,集成 AI 门户、AI 网关、Skills Hub,并支持对智能体与模型的集中化管理;
  • 高效可视化运维:通过 Web 图形界面,轻松实现主机监控、文件管理、数据库管理、容器管理等功能;
  • 快速建站部署:深度集成 WordPress 与 Halo 等主流建站程序,一键完成域名绑定、SSL 证书配置;
  • 精选应用商店:内置高质量开源应用商店,提供一键安装与升级服务;
  • 企业级安全:基于容器技术部署应用,有效减少漏洞暴露面,同时提供防火墙、日志审计等安全功能;
  • 一键数据备份:支持一键备份与恢复,并可对接多种云端存储。

这六项特性并非只是宣传口号,在仓库源码中均有对应模块可查证,下文将逐一展开。

仓库架构:core、agent 与 frontend 三模块

从源码结构看,1Panel 采用前后端分离的三模块组织方式,这也是理解整套系统的关键:

模块 定位 入口文件
core/ 面板核心进程:登录认证、会话管理、备份、脚本库等 core/cmd/server/main.go
agent/ 服务器代理进程:直接操作主机、容器、数据库、网站、AI 等 agent/cmd/server/main.go
frontend/ 前端 Web 应用(Vue 3 + Vite + Element Plus + Pinia) frontend/package.json

两个 Go 进程都以 github.com/1Panel-dev/1Panel/{core,agent} 作为独立 module(见 core/go.modagent/go.mod),统一使用 Go 1.26.1 与 Gin v1.12.0 框架,并使用 glebarez/sqlite(纯 Go 的 SQLite 驱动)作为本地存储——这一选型使面板无需依赖外部数据库即可运行,契合“轻量级”定位。

从两个模块的依赖差异可以直观看出分工:

  • **core 侧(core/go.mod)**引入了 webauthn(Passkey 通行密钥)、samlgo-oidcgo-ldap(企业级 SSO 登录)、base64Captcha(验证码)、robfig/cron(定时任务)、maroto(PDF 导出)等依赖,支撑登录安全与会话管理;
  • **agent 侧(agent/go.mod)**引入了 docker/docker(容器管理)、go-acme/lego(ACME SSL 证书签发,且 fork 了 1Panel 自己的 lego 版本)、go-sql-driver/mysqljackc/pgx(MySQL/PostgreSQL 客户端)、mholt/archiver(压缩包)、maxminddb-golang(IP 地理信息)等依赖,支撑对主机与数据层的直接操作。

agent 的 API 路由集中在 agent/router/ 下,按业务域拆分:ro_container.goro_database.goro_website.goro_ai.goro_app.goro_backup.goro_cronjob.goro_dashboard.goro_file.goro_host.goro_nginx.goro_runtime.goro_toolbox.go 等;agent/init/router/router.go 中所有接口统一挂载在 /api/v2 前缀下,并默认启用 i18n 中间件。core 侧则挂载登录、备份、脚本库、日志、设置等路由(见 core/router/)。

前端 frontend/src/apicomponentsviewsstorerouters 等标准 Vue 3 工程结构组织,views 目录下约有 470 个 Vue 页面组件,覆盖面板全部功能界面。

快速开始:一键安装与离线部署

一键安装:在目标 Linux 服务器上执行如下命令即可一键安装 1Panel:

bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"

如果目标机器处于离线环境,官方推荐改用安装包方式进行安装部署(详见在线文档的安装章节)。

CLI 子命令:core 进程基于 Cobra 提供一组运维子命令(见 core/cmd/server/cmd/),包括 app(启动面板)、reset(重置)、restore(恢复)、update(升级)、user / user-info(用户管理)、listen-ip(监听地址)、version(版本信息)。agent 进程则通过 agent/cmd/server/cmd/root.go1panel-agent 命令名启动,其 RunE 直接调用 server.Start()

从源码构建Makefile 提供了完整的构建入口,核心目标是:

build_all: build_frontend build_core_on_linux build_agent_on_linux

对应地:

  • build_frontend:在 frontend/ 目录执行 npm install && npm run build:pro(生产模式 Vite 构建);
  • build_core_on_linux / build_agent_on_linux:分别以 CGO_ENABLED=0-trimpath -ldflags '-s -w' 编译出 1panel-core1panel-agent 两个二进制文件(输出至 build/ 目录);
  • build_on_local:面向 macOS(darwin)开发机,固定 GOOS=linux GOARCH=amd64 交叉编译,便于本地开发调试;
  • 另有 clean_assets(清理前端静态资源)与 upx_bin(用 upx 压缩二进制)等辅助目标。

基础配置文件:agent 进程的默认配置为 agent/cmd/server/conf/app.yaml,关键项包括:

base:
  install_dir: /opt   # 面板安装目录
  mode: dev           # 运行模式
  is_demo: false      # 演示模式
  is_offline: false   # 离线模式
log:
  level: debug        # 日志级别
  time_zone: Asia/Shanghai
  max_backup: 10     # 日志最大备份份数

is_offline 对应上文提到的离线环境场景;core 侧同样维护一份 core/cmd/server/conf/ 配置。

API 接入:Swagger 与 API-Key 鉴权

两个进程的 main.go 中都内嵌了 Swagger 注解(@BasePath /api/v2,License 为 GPL-3.0),说明 1Panel 提供了完整的 OpenAPI 文档。从 core/cmd/server/main.goagent/cmd/server/main.go 的注解可以看到其 API-Key 鉴权机制:

curl -X GET "http://{host}:{port}/api/v2/toolbox/device/base" \
  -H "1Panel-Token: <1panel_token>" \
  -H "1Panel-Timestamp: <current_unix_timestamp>"

其中 1Panel-Token 的生成规则为 md5('1panel' + API-Key + UnixTimestamp)1Panel-Timestamp 为当前秒级时间戳。这意味着 1Panel 的 /api/v2/* 接口可以脱离 Web 界面、被外部自动化系统(CI/CD、监控平台等)直接调用,这是其“企业级”运维集成的技术基础。

全栈 AI 管理(Metal-to-Agent)的源码证据

README 中“全栈 AI 管理”是最具辨识度的卖点。在源码中,这一能力落在 agent 模块的 AI 相关目录:

  • MCP 服务器网关agent/cmd/server/ai/compose.yml 通过容器编排 supercorp/supergateway 镜像,把 stdio 传输的 MCP Server 暴露为 HTTP/SSE/Streamable-HTTP 服务,支持 ${HOST_IP}:${PANEL_APP_PORT_HTTP} 端口映射并加入 1Panel 外部网络 1panel-network——这正是 README 中“AI 网关”的落地形态;
  • 本地大模型推理agent/cmd/server/ai/llm-compose.yml 编排 tensorrt-llm 推理容器,通过 runtime: nvidiadeploy.resources.reservations.devicesdriver: nvidia, count: all)申请全部 GPU,挂载 ${MODEL_PATH} 模型目录并配置 ipc: hostmemlock 等运行参数——对应 README 所述“从底层硬件(Metal)”的管理能力;
  • 应用层:agent 的 API 目录中存在 ai.goagents.gomcp_server.gotensorrt_llm.gogpu.go 等接口文件,以及对应的 agent/app/service/ 中的 agents_*.go(智能体、频道、技能、插件等)服务实现;同时 agent/utils/ai_tools/ 下按 acceleratorgpunpuxpu 划分了多种 AI 加速卡的探测逻辑,印证“Metal-to-Agent”覆盖多种硬件形态的表述。

企业级安全与备份能力

  • 登录安全:从 core/go.mod 的依赖可见面板集成了 WebAuthn(Passkey,见 core/utils/passkey/)、MFA 多因素认证(core/utils/mfa/mfa.go)、SAML/OIDC/LDAP 企业登录、IP 限制与会话管理(core/middleware/ip_limit.gosession.gocsrf_protect.go 等);
  • 防火墙与主机安全agent/utils/firewall/ 同时实现了 nftables_helperiptables_helper 两套规则引擎,并包含 docker_guard(容器端口保护)、forwarding(端口转发)、lifecycle(规则生命周期)等子模块,对应 README 中“防火墙、日志审计等安全功能”;
  • 备份与云存储对接agent/utils/cloud_storage/client/ 提供多家云盘客户端,agent/app/service/backup_mysql.gobackup_container.gobackup_website.go 等文件说明备份覆盖了数据库、容器、网站等对象;core 侧另有 core/utils/upgrade/backup.go 支撑面板自身升级前的备份。

应用商店与建站能力

agent 侧的应用商店由 app 系列模块支撑:agent/app/api/v2/ 提供 app.goapp_install.goapp_ignore_upgrade.go 等接口,agent/app/service/ 提供 app_install.goapp_upgrade.goapp_sync_task.go 等服务,模型层包含 app_detail.goapp_install_resource.go 等,完整覆盖了“一键安装与升级、一键扩展服务器功能”的应用商店流程。建站方面,nginx.gowebsite_*.go(SSL、ACME、DNS 解析、负载均衡、重写、代理等)以及 agent/cmd/server/nginx_conf/ 下的大量 Nginx 模板配置,支撑了 README 提到的“一键完成域名绑定、SSL 证书配置”。

多语言支持与项目生态

1Panel 的国际化覆盖前后端两侧:前端 frontend/src/lang/ 与后端 core/i18n/lang/agent/i18n/lang/ 各提供 14 种语言文件(zh、zh-Hant、en、ja、ko、pt-BR、ru、es-ES、fr、de、tr、ar、ms、fa、lo 等),文档层面则提供 docs/ 目录下 15 份对应语言的 README(如 docs/README.ja.mddocs/README.es-es.md 等)。

在版本选择上,官方文档提供了社区版与专业版的版本对比页;在生态上,1Panel 与飞致云的 MaxKB(智能体平台)、JumpServer(堡垒机)、Halo(建站工具)、DataEase(数据可视化)、MeterSphere(测试平台)、KubePi(K8s 面板)等项目同属一个开源矩阵,可组合覆盖从单机运维到 K8s 集群的完整场景。

License 与适用前提

1Panel 采用 GNU General Public License v3(GPLv3)许可证发布,版权归 FIT2CLOUD 飞致云所有(见 LICENSE)。使用前需注意:

  • 一键安装脚本面向可联网的 Linux 服务器,离线环境应改用安装包方式部署;
  • AI 相关能力(如 TensorRT-LLM 推理)依赖 NVIDIA GPU 环境,容器需具备 nvidia runtime 支持;
  • 从源码构建需要 Go 1.26.1+ 工具链与 Node.js 环境(前端构建),并可用 make build_all 一次性产出前端资源与两个后端二进制。

综上,1Panel 的 README 所描述的每一项能力——可视化运维、应用商店、建站、安全、备份与全栈 AI 管理——都能在 core/agent/frontend 三模块的源码中找到对应实现,这使该仓库不仅是一个可直接安装的面板,更是一个值得细读的服务器运维系统参考实现。

登录后查看全文
热门项目推荐
相关项目推荐