# 🚀 frpc-console > 轻量级 frpc 管理面板 —— 为你的内网穿透插上翅膀 [![Go Version](https://img.shields.io/badge/Go-1.21+-00ADD8?style=flat&logo=go)](https://golang.org/) [![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![Release](https://img.shields.io/github/v/release/lxh2875931338/frpc-console)](https://git.whitetop.xyz/lxh2875931338/frpc-console/releases) --- ## 📖 简介 **frpc-console** 是一个专为 [frp](https://github.com/fatedier/frp) 设计的轻量级管理工具。它解决了 frpc 配置文件手动维护繁琐、缺少可视化界面的痛点,让你在浏览器中轻松管理所有隧道。 ### ✨ 核心特性 - 🔐 **首次启动引导** —— Web 端完成管理员注册,无需 CLI 交互 - 📋 **隧道全生命周期管理** —— 增删改查 + 一键启用/禁用 - 📦 **导入/导出 TOML** —— 无缝迁移现有 frpc 配置 - 🔄 **配置热加载** —— 修改即生效,无需重启 frpc - 🖥️ **多平台支持** —— Windows / Linux / ARM 全平台兼容 - 🐳 **容器化就绪** —— 提供 Docker 镜像,开箱即用 - 🎨 **深色磨砂玻璃 UI** —— 现代化视觉体验,日夜皆宜 --- ## 🚀 快速开始 ### 方式一:直接运行二进制 从 [Releases](https://git.whitetop.xyz/lxh2875931338/frpc-console/releases) 下载对应平台版本: ```bash # Linux / macOS chmod +x frpc-console ./frpc-console # Windows frpc-console.exe ``` 首次启动会在终端提示设置管理员账户,之后访问 http://localhost:8080 即可。 ### 方式二:Docker 运行 ```bash docker run -d \ --name frpc-console \ -p 9300:9300 \ -v ./data:/app/data \ lxh2875931338/frpc-console:latest ``` ### 方式三:源码编译 ```bash git clone https://github.com/lxh2875931338/frpc-console.git cd frpc-console go mod tidy go build -o frpc-console . ./frpc-console ``` ## 🗂️ 项目结构 ```txt frpc-console/ ├── main.go # 入口 ├── api.go # HTTP 路由 & Handler ├── db.go # SQLite 数据库操作 ├── auth.go # JWT 认证 & 密码管理 ├── frp.go # frpc 管理核心逻辑 ├── toml_parser.go # TOML 解析器 ├── static/ # 前端静态资源 │ ├── index.html │ ├── app.js │ ├── style-1.css # 全局基础样式 │ ├── style-2.css # 登录页样式 │ └── style-3.css # 主界面样式 ├── bin/ # 内嵌 frpc 二进制 (多平台) │ ├── frpc_windows_amd64.exe │ ├── frpc_linux_amd64 │ └── frpc_linux_arm64 ├── frpc.tmpl # frpc 配置模板 ├── Dockerfile └── go.mod ``` ## ⚙️ 配置说明 ### 环境变量 | 变量 | 说明 | 默认值 | |---|---|---| | PORT | 监听端口 | 9300 | ### 数据存储 · 数据库文件:./frpc-console.db · frpc 配置文件:./frpc.toml · frpc 日志文件:./frpc.log --- ## 🛠️ 开发指南 ```bash # 克隆项目 git clone https://github.com/lxh2875931338/frpc-console.git cd frpc-console # 安装依赖 go mod tidy # 开发模式运行 go run . # 编译生产版本 go build -ldflags="-s -w" -o frpc-console . ``` ## 前端开发 前端使用 Vue 3 CDN + Naive UI,无需额外构建工具。修改 static/ 目录下的文件后,刷新浏览器即可预览效果。 --- ### 📦 构建 Docker 镜像 ```bash # 构建 amd64 镜像 docker build -t frpc-console:amd64 . # 多架构构建 (需要 buildx) docker buildx build --platform linux/amd64,linux/arm64 -t frpc-console:latest --push . ``` --- ## 🔧 常见问题 #### Q: 如何修改管理员密码? 登录后,在「全局配置」页面顶部找到「账户管理」区域,输入当前密码和新密码即可。 #### Q: 如何导入现有的 frpc.toml? 在「隧道列表」页面点击「导入 TOML」,选择你的 frpc.toml 文件即可。 #### Q: frpc 启动失败怎么办? 检查 frpc.toml 配置是否正确,或查看 ./frpc.log 日志文件。 #### Q: 支持哪些 frp 版本? 目前支持情况如下: | 系统 | 架构版本 | 版本号 | |---|---|---| | Linux | AMD64/x86-64 | 0.70.0 | | Linux | ARM64/Aarch64 | 0.70.0 | | Windows | AMD64/x86-64 | 0.69.0 | > 不是Windows不配高版本,是直到现在frp设计者那边0.70.0都没发Windows版本
(除非我单独下载下来make一个0.70.0的Windows,但是作者没放出来,肯定是有原因的) #### Q: 为什么不用 / 不推荐 Podux? Podux 是个好项目,理念上和我们是一致的:用 Web 界面管理 frpc
但它的设计取向和我们完全不同: | 对比项 | frpc-console | Podux | |---|---|---| | 数据库 | SQLite(单文件,几 MB) | PocketBase(带 Admin UI、用户系统、全套 API) | | 前端 | Vue CDN | React + Webpack | | 实机内存占用 | **~50 MB** | **没启动成功,1GB RAM 独立分配仍 OOM(原因不明)** | | 镜像大小 | 封装多平台二进制frpc后 120.28 MB | 76.1 MB | | 部署方式 | 单二进制 / Docker | 单二进制 / Docker | | 多平台支持 | ✅ 原生交叉编译 | ✅ 原生交叉编译 | > Podux 与其说是一个 frp 控制面板,不如说是一个“一站式 frp 管理器 + 可视化数据流面板 + 通道保活监测工具”。这种一站式本身没毛病,甚至功能实现非常到位。
但 podux的框架选型有点重,而且很明显细节稍显仓促。PocketBase 自带 WebUI 的情况下,Podux 还要再包一层 WebUI——相当于给数据库的 UI 又套了个 UI。更费解的是,这层 WebUI 只支持导入,不支持导出。这设计确实让人有点摸不着头脑。
这也正是我们选择 SQLite + Vue CDN 的原因。 ### Q: 为什么不直接用 frp 官方提供的 web 界面? frp 官方确实提供了 `dashboard` 和 `frpc-admin` 功能,但它们更多是“监控”视角,而非“管理”视角。你需要手动编辑配置文件,重启 frpc,或者依赖命令行操作。 frpc-console 的目标是: - **点一点就能新增隧道** - **开关一拨就能启用/禁用** - **导入导出无缝迁移** - **热加载无需重启** ### Q: 支持 frp 的所有功能吗? frpc-console 覆盖了 frp 最核心的 **TCP 隧道管理** 功能,包括 `tcpMux`、负载均衡、心跳配置等。如果你有更复杂的需求(比如 STCP、XTCP、P2P),欢迎提 issue,我们会评估是否加入。 --- ## 🧠 设计哲学 frpc-console 遵循 **“够用就好”** 的原则: 1. **frp 是轻量工具,管理工具也应该是轻量的。** 2. **能用 SQLite 就不用 PostgreSQL,能用 Vue CDN 就不用 React 全家桶。** 3. **前端能做的事,后端不加额外复杂度。** 4. **删掉一个容器等于删掉所有垃圾,所以用 Docker 隔离是对的。** --- ## 📝 更新日志 ### 1.0-Release (2026-07-24) · 🎉 首次发布
· ✨ 支持隧道增删改查
· ✨ 支持 TOML 导入/导出
· ✨ 首次启动 Web 注册
· ✨ 深色磨砂玻璃 UI
· ✨ 多平台 frpc 自动适配
· 🐳 Docker 镜像支持 ### .0-Release (正在修整,后续开发) --- ## 📄 许可证 MIT License © 2026 lxh2875931338 --- ## 🙏 致谢 · fatedier/frp —— 强大的内网穿透工具
· gin-gonic/gin —— 高性能 Go Web 框架
· vuejs/vue —— 渐进式 JavaScript 框架