ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

1Panel 技术全解析:开源 Linux 服务器面板如何将 Docker 运维与 OpenClaw AI Agent 合二为一

1Panel 技术全解析:开源 Linux 服务器面板如何将 Docker 运维与 OpenClaw AI Agent 合二为一 1Panel 技术全解析开源 Linux 服务器面板如何将 Docker 运维与 OpenClaw AI Agent 合二为一【免费下载链接】1Panel 1Panel is a modern, open-source Linux server management panel and a lightweight AI management platform.项目地址: https://gitcode.com/GitHub_Trending/1p/1Panel1Panel 是一款现代化、开源的 Linux 服务器可视化管理面板其最鲜明的定位是从裸机到 AgentMetal-to-Agent的一体化 AI 管理平台既能以 Web 界面完成主机监控、文件、数据库、容器等常规运维又能原生运行 Ollama 等本地 LLM 并编排 OpenClaw 个人 AI Agent无需额外维护一套独立的 AI 技术栈。本文以官方文档 docs/README.fa.md 为主线对照仓库源码系统梳理 1Panel 的核心功能、架构布局与快速上手路径帮助你理解它的面板能力边界以及 AI 管理功能在底层是如何落地的。1Panel 是什么从服务器面板到 AI 管理平台1Panel 是一个现代、开源的 Linux 服务器管理面板同时也是一个轻量级的 AI 管理平台。官方文档波斯语版给出的定位是通过直观的 Web 界面用户可以运行 Ollama 等开源 LLM 模型、部署个人的 OpenClaw Agent并从一个干净的统一界面管理整个服务器环境无需记忆繁杂的 CLI 命令。仓库代码恰好与这一描述对应其主要能力被组织为三个并行的工程目录agent/v2 代后端Go承载网站、容器、数据库、备份等业务并集中实现了 AI 管理相关的能力如模型提供方目录、OpenClaw Agent 编排、Skills/Plugins 管理等core/精简后的基础核心后端保留认证、备份、设置、命令、脚本库等通用能力frontend/基于 Vue 3 的现代 Web 前端。从源码结构可以推断1Panel 把面板与AI 平台做成了同一套代码基座常规运维服务与 AI 编排服务并列于 agent/app/service/ 目录之下这种一体化设计正是它在同类工具中区别于纯运维面板的关键。为什么选 1Panel面板选型横向对照官方 README 以一张对照表说明 1Panel 在面板市场的差异点。以下信息源自官方文档声明docs/README.fa.md可作为选型时的参考输入而非第三方评测结论维度1PanelcPanel / PleskaaPanelWebmin免费且开源✅❌部分✅原生 AI Agent 运行环境✅❌❌❌一键应用市场✅ 165 应用❌✅❌现代化 UI2020 年后设计✅❌部分❌Docker / 容器管理✅❌❌❌活跃开发✅✅✅缓慢这张表浓缩了 1Panel 的四个差异化方向开源免费、内置 AI 运行时、容器化应用市场、现代交互设计。其中容器管理与AI Agent 运行环境两项需要源码佐证才能理解其真实实现下文将分别展开。核心特性与源码级佐证1. AI 管理模型目录、API 类型与认证抽象面板级 AI 管理的地基是 agent/app/provider/catalog.go 中维护的模型提供方目录。从源码看目录以catalog map[string]Meta定义catalog.go每个提供方通过Meta结构体描述type Meta struct { Key string DisplayName string DisplayNameKey string Sort uint DefaultAPIType string APIConfigs []APIConfig EnvKey string Models []Model }提供方覆盖面内置了custom、ollama、llmman、vllm、deepseek、openai、openrouter、anthropic、gemini、moonshot/kimi等主流来源还包含zaiZ.ai/GLM、minimax、xiaomiMiMo等国产模型提供方API 类型归一化同一提供方可暴露多种协议如openai-completions、openai-responses、anthropic-messages、openai-images、openai-embeddings、gemini-generate-content等并给出默认 API 类型DefaultAPIType与默认 BaseURL认证模式抽象定义了AuthModeBearerAuthorization: Bearer与AuthModeXAPIKey两种认证方式例如 Anthropic 风格端点默认使用x-api-keycatalog.go且部分提供方如custom允许编辑 BaseURL、DiscoverModels标记支持自动发现模型列表规范化处理ResolveAuthMode、ResolveBaseURL、NormalizeModelID等函数处理模型 ID 前缀、遗留命名与端点路径归一化如自动剥离/chat/completions、/v1/messages后缀避免用户在填写模型时因格式差异反复出错。因此文档中所说的在面板内运行/接入多种 LLM在实现上是对提供方 API 类型 认证方式 BaseURL 模型名这一统一配置模型的展开而 Ollama/vLLM/llmman 这类本地运行时则被定义为固定本地端点如llmman指向http://127.0.0.1:17434/v1的普通提供方。2. OpenClaw Agent一键部署与命令行编排文档着重强调部署个人 OpenClaw Agent、无需单独管理 AI 技术栈。对照源码1Panel 对 OpenClaw 的管理实际上是面板服务层通过 Docker exec 驱动容器内的 openclaw CLI完成的。在 agent/app/service/agents_agents.go 的CreateRole中可以看到创建 Agent 角色的核心调用链args : []string{openclaw, agents, add, req.Name} workspace : /home/node/.openclaw/workspace-agent_ req.Name agentDir : /home/node/.openclaw/agents/ req.Name args append(args, --workspace, workspace) if model : strings.TrimSpace(req.Model); model ! { args append(args, --model, model) } for _, binding : range req.Bindings { ... args append(args, --bind, channel) } args append(args, --agent-dir, agentDir) args append(args, --non-interactive, --json) output, err : cmd.RunDockerExecWithStdout(5*time.Minute, install.ContainerName, args...)这意味着每次 Agent 创建都会在安装目录下分配独立 workspaceworkspace-agent_name与 agent 目录agents/name把面板选定的模型与频道绑定如 Telegram/Discord 等渠道的--bind channel:accountID透传给 openclaw并以--json非交互方式执行。文件头部还定义了 Agent 支持的角色描述文件AGENTS.md、SOUL.md、USER.md、IDENTITY.md、TOOLS.md、HEARTBEAT.md、BOOT.md、BOOTSTRAP.md可见 Agent 的人格/身份/工具均可通过 Markdown 文件定制。而 agent/app/provider/openclaw.go 中的BuildOpenClawProviderPatch负责把面板侧的模型选择翻译为 OpenClaw 可用的 provider 补丁它会把gemini归一化为google与google-generative-ai协议、把ollama/llmman视为免密钥的本地来源、处理 openai/openrouter/anthropic 的限定模型名保留逻辑并最终产出PrimaryModel、ProviderKey、ModelID、APIKey、BaseURL、APIType、AuthHeader一套结构化配置写入 OpenClaw 运行配置。面板上呈现的 Agent 概览由 agent/app/service/agents_overview.go 的GetOverview实现它汇总容器运行状态、应用版本、默认模型从配置中agents.defaults.model.primary读取与已配置频道数当容器处于运行态时还会并发统计 Skill 数量通过docker exec ... openclaw skills list --json解析、会话数量读取data/conf/agents/*/sessions/*.jsonl文件与定时任务数量。也就是说AI Agent 从创建到运行再到监控的全流程在面板内确实都有对应的操作与数据支撑而非仅有入口。此外仓库 agent/utils/ai_tools/ 下提供gpu/、npu/、xpu/、accelerator/等探测子模块——从源码结构看这与文档监控 GPU 消耗的能力相呼应为本地推理场景提供硬件视角的观测基础。3. 网站一键部署域名、SSL 与 Nginx 自动装配文档将网站部署描述为生产就绪 自动域名绑定 SSL 证书 Nginx 配置。仓库中以WebsiteService为入口agent/app/service/website.go其接口方法完整覆盖了网站生命周期type IWebsiteService interface { PageWebsite(req request.WebsiteSearch) (int64, []response.WebsiteRes, error) GetWebsites() ([]response.WebsiteDTO, error) CreateWebsite(create request.WebsiteCreate) error OpWebsite(req request.WebsiteOp) error ... DeleteWebsite(req request.WebsiteDelete) error }围绕该服务仓库还配备了成体系的支撑模块agent/app/service/website_ssl.goSSL 证书签发与续期、website_acme_account.go 与 website_dns_account.goACME/DNS 服务商凭据管理、website_domain.go、website_proxy.go反向代理以及 website_rewrite.go伪静态规则。同时 agent/cmd/server/nginx_conf/ 内置了一批 Nginx 配置模板配合 utils/nginxparser 与 components把生成站点配置从手写 conf 变为代码可解析、可渲染的结构化流程。域名绑定与 SSL 配置由此实现了自动化这正是无需手工折腾 Nginx承诺背后的工程基础。4. 应用市场一键安装与升级文档声明应用市场提供 165 开源应用的一键安装升级数据为官方文档声明。源码层面应用生命周期由 agent/app/service/app_install.go、agent/app/service/app_upgrade.go 与 agent/app/service/app_sync_task.go 等模块承载配套 agent/app/model/app_install.go 等数据模型应用安装采用容器化隔离把应用运行环境收敛到 Docker 中从源头降低漏洞暴露面。应用升级、忽略升级名单app_ingore_upgrade.go等功能也均有独立服务实现属于一个完整的市场-安装-运维闭环。5. 容器与 Docker 管理面板的容器管理并非简单封装而是覆盖了容器、镜像、网络、卷与 Compose 的完整视图。相关服务散见于 agent/app/service/container*.go容器基础操作、container_network.go 网络、container_volume.go 卷、container_compose.go Compose 栈并向下封装为 utils/docker 的工具库。从目录结构看甚至包含端口守卫repo/docker_port_guard.go与防火墙联动逻辑firewall_docker.go说明其容器管理是和安全策略打通设计的。6. 安全与备份企业级默认项文档列出 WAF、防火墙规则、fail2ban、容器隔离、审计日志以及一键备份到 AWS S3 / Cloudflare R2 / 本地存储并支持快照恢复。仓库中的实现分布如下防火墙agent/app/service/firewall*.go 与 utils/firewall/含 iptables/nftables helper、端口白名单、生命周期管理实现规则下发而非仅展示fail2ban 与 FTP 加固utils/toolbox/fail2ban.go、utils/toolbox/pure-ftpd.go备份存储客户端utils/cloud_storage/client/ 下按 20 个对象存储/云盘分别封装了上传客户端与 agent/app/service/backup*.go 系列按网站、应用、容器、数据库等粒度分文件配对快照agent/app/service/snapshot_create.go、snapshot_recover.go、snapshot_rollback.go 三件套实现创建-恢复-回滚的完整链路。审计与操作追踪方面Web 层存在 middleware/operation.go 操作中间件可推断其对关键写操作做记录为安全审计提供依据。快速开始从裸机到面板上线官方 README 给出的上手路径非常短整个安装通常在一分钟内完成。前置条件如下系统要求Linux 服务器Debian / Ubuntu / CentOS / Rocky1 GB 内存可访问互联网官方文档称安装过程约 60 秒docs/README.fa.md。在满足条件的服务器上执行官方快速安装脚本bash -c $(curl -sSL https://resource.1panel.pro/v2/quick_start.sh)安装完成后浏览器访问http://your-server-ip:port/security-path若需要找回登录凭据通过 SSH 执行1pctl user-info。这里的port与security-path是安装过程中生成的随机端口与安全访问路径体现了安全默认值的产品取向——即使初次使用面板也不会暴露在默认端口与裸路径上。随后的运维基本都在 Web UI 完成建站绑定域名、安装应用商店软件、创建备份计划、编排 OpenClaw AgentCLI 仅在取回凭据等场景出现。开源版与 Pro 版能力边界对照官方文档docs/README.fa.md承诺1Panel OSS 永久免费Pro 版面向团队与生产负载增加能力其对照关系如下依据官方文档整理能力OSSPro应用一键安装✅✅AI AgentOpenClaw1 个 Agent无限WAF 与高级安全基础✅网站防篡改保护❌✅网站可用性监控❌✅多节点管理❌✅自定义 Logo 与主题❌✅优先支持❌✅从上表可见OSS 版的核心价值一键安装、基础安全、单 Agent 的 AI 能力保持完整Pro 更多在规模化与多租户维度增值例如解除 Agent 数量限制、多节点统一管理。官方文档同时提及 Pro 订阅按年计费并提供 30 天免费试用具体价格以官方定价页为准此处不展开。工程结构与参与方式若想继续深入阅读代码建议按以下路径切入AI 管理入口agent/app/provider/catalog.go提供方目录→ agent/app/service/agents_agents.goAgent 编排→ agent/app/service/agents_overview.go运行概览网站与 SSLagent/app/service/website.go 与 agent/app/service/website_ssl.go备份体系agent/app/service/backup.go 与 utils/cloud_storage/client/安全agent/app/service/firewall.go 与 utils/firewall/前端交互frontend/views/472 个 Vue 组件按功能域组织。1Panel 采用 GNU GPL v3.0 协议开源发现安全漏洞时请先阅读 SECURITY.md 中关于披露流程的说明再行反馈。官方还通过社区Discord、官方文档站与 Issue 系统提供支持与答疑外部社区链接未在此罗列可从仓库根 README.md 导航查阅。总结综合官方文档与仓库源码可以确认1Panel 的核心竞争力并非某一个单一功能而是用面板的交互体验统一承载传统运维与新兴 AI 负载的系统工程。传统侧它以容器化为底座把网站、数据库、备份、安全规则的日常操作收敛为可点击的流程AI 侧它通过提供方目录与认证抽象接入主流模型并借助openclawCLI 的容器内编排把 Agent 的创建、绑定、监控做成面板原生能力。如果你正在寻找一份能同时管好服务器与 AI Agent 的开源面板1Panel 的设计思路值得作为重点评估对象而上手成本——一次 60 秒的脚本安装——也足够低可以直接在自己的 Linux 服务器上验证。【免费下载链接】1Panel 1Panel is a modern, open-source Linux server management panel and a lightweight AI management platform.项目地址: https://gitcode.com/GitHub_Trending/1p/1Panel创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进