首页 Docker导航 Sun-Panel-Helper

Sun-Panel-Helper

Sun-Panel-Helper 是一款专为 Sun-Panel 设计的可视化美化工具。作为一个专注于增强 Sun-Panel 功能的辅助工具,我们致力于为您的 Sun-Panel 带来更多精彩的功能和更好的使用体验。
2025-07-09 01:19
中文
338 人使用
相关文章
3分钟打造高颜值NAS个人专属导航页 彻底告别Docker应用端口混乱的开源神器

为 Sun-Panel 设计的可视化美化工具

让你的 Sun-Panel 锦上添花

主要特性

中转服务

连接 Sun-Panel 前端与 Helper 后端

自动同步配置文件

实时更新无需重启

支持多实例部署

可视化配置

所见即所得的编辑体验

实时预览修改效果

参数持久化存储

一键应用到面板

扩展支持

CSS 样式扩展

JS 功能增强

组件动态加载

配置自动同步

便捷部署

Docker 一键部署

自动挂载配置

支持反向代理

完整的部署文档

在线体验

我们提供了完整的演示环境,让你在部署前可以充分体验:

Sun-Panel-Helper Demo

http://demo.cocoyoo.cn

功能:

体验完整的样式编辑功能

预览各种美化效果

测试部署流程

Sun-Panel 演示站

http://home.cocoyoo.cn

特点:

展示实际应用效果

体验优化后的界面

感受流畅的交互体验

系统要求

硬件要求

CPU: 1 核心以上

内存: 512MB 以上

硬盘空间: 100MB 以上

软件要求

Docker 19.03 或更高版本

Sun-Panel 已安装并正常运行

支持的操作系统:

Linux (推荐)

Windows

macOS

前置条件

1. Docker 环境

确保 Docker 已正确安装并运行:

# 检查 Docker 版本
docker -v

# 检查 Docker 服务状态
systemctl status docker  # Linux
docker info             # Windows/macOS

2. Sun-Panel 配置

Sun-Panel 已正常运行

可以访问 Sun-Panel 的配置目录

确认 custom 目录位置:

# 常见位置示例
/path/to/sunpanel/conf/custom     # 标准路径
/vol1/@appshare/sunpanel/conf/custom  # 飞牛OS
/var/apps/Sun-Panel/var/web/custom   #飞牛OS应用商店版固定为此路径

3. 网络要求

确保以下端口可用:

33002: Helper 前端访问端口(可自定义)

3001: Helper 后端服务端口(可自定义)

如果使用反向代理,需要:

支持 WebSocket

正确配置 SSL(如果使用 HTTPS)

4. 权限要求

Docker 运行权限

Sun-Panel custom 目录的读写权限

端口绑定权限(如果不使用 root 用户)

配置检查清单

在开始部署前,请检查以下项目:

Docker 正常运行

Sun-Panel 可以正常访问

已确认 custom 目录位置

所需端口未被占用

具备必要的文件权限

网络连接正常

特殊场景准备

IPv6 环境

如果需要在 IPv6 环境下使用:

确保 Docker 支持 IPv6

准备使用 Host 网络模式

检查 IPv6 连接性

反向代理

如果计划使用反向代理:

准备好域名(可选)

配置好 SSL 证书(如果使用 HTTPS)

确认代理服务器支持 WebSocket

部署方式选择

Sun-Panel-Helper 支持两种 Docker 部署模式:

标准模式

最常用的部署方式

使用端口映射访问服务

适合大多数使用场景

Host 网络模式

直接使用主机网络

支持 IPv6 环境

适合特殊网络需求

标准模式部署

1. 拉取镜像

docker pull madrays/sun-panel-helper:latest

2. 创建容器

docker run -d \\
  --name sun-panel-helper \\
  -p 33002:80 \\
  -e BACKEND_PORT=3001 \\
  # 这是您自己创建的Helper数据目录,不是Sun-Panel的目录!
  -v /your/helper/path/data:/app/backend/data \\
  # 这是您自己创建的Helper备份目录,不是Sun-Panel的目录!
  -v /your/helper/path/backups:/app/backend/backups \\
  # 注意:这个目录必须指向Sun-Panel的custom目录,Helper通过它来控制美化Sun-Panel
  -v /path/to/sunpanel/conf/custom:/app/backend/custom \\
  madrays/sun-panel-helper:latest

参数说明

--name sun-panel-helper: 容器名称

-p 33002:80: 前端端口映射

-e BACKEND_PORT=3001: 后端服务端口

-v /your/helper/path/data:/app/backend/data: Helper的数据目录,必须挂载,用于保存Helper的配置数据

-v /your/helper/path/backups:/app/backend/backups: Helper的备份目录,必须挂载,用于保存自动和手动备份

-v /path/to/sunpanel/conf/custom:/app/backend/custom: 必须挂载,必须指向 Sun-Panel 的 custom 目录

Host 网络模式部署

1. 拉取镜像

docker pull madrays/sun-panel-helper:latest

2. 创建容器

docker run -d \\
  --name sun-panel-helper \\
  --network host \\
  -e BACKEND_PORT=3001 \\
  -e FRONTEND_PORT=33002 \\
  # 这是您自己创建的Helper数据目录,不是Sun-Panel的目录!
  -v /your/helper/path/data:/app/backend/data \\
  # 这是您自己创建的Helper备份目录,不是Sun-Panel的目录!
  -v /your/helper/path/backups:/app/backend/backups \\
  # 注意:这个目录必须指向Sun-Panel的custom目录,Helper通过它来控制美化Sun-Panel
  -v /path/to/sunpanel/conf/custom:/app/backend/custom \\
  madrays/sun-panel-helper:latest

参数说明

--network host: 使用主机网络

-e FRONTEND_PORT=33002: 前端监听端口

-e BACKEND_PORT=3001: 后端服务端口

-v /your/helper/path/data:/app/backend/data: Helper的数据目录,必须挂载,用于保存Helper的配置数据

-v /your/helper/path/backups:/app/backend/backups: Helper的备份目录,必须挂载,用于保存自动和手动备份

-v /path/to/sunpanel/conf/custom:/app/backend/custom: 必须挂载,必须指向 Sun-Panel 的 custom 目录

端口配置

前端端口

标准模式:通过 -p 参数映射,如 -p 33002:80

Host 模式:通过环境变量设置,如 -e FRONTEND_PORT=33002

后端端口

通过环境变量设置:-e BACKEND_PORT=3001

默认值:3001

建议:除非端口冲突,否则保持默认值

目录挂载

必要目录

必须挂载

以下目录必须挂载,否则会导致数据丢失、备份功能无法使用或 Helper 功能无法生效!

# 数据目录 - 存储Helper的用户配置和设置(您需要在本地创建此目录)
-v /your/helper/path/data:/app/backend/data

# 备份目录 - 存储Helper的自动和手动备份(您需要在本地创建此目录)
-v /your/helper/path/backups:/app/backend/backups

# Sun-Panel 的 custom 目录 - Helper 功能生效的关键
-v /path/to/sunpanel/conf/custom:/app/backend/custom
custom 目录特别说明

/app/backend/custom 必须挂载到 Sun-Panel 的 custom 目录,这是 Helper 与 Sun-Panel 交互的关键。 如果此目录挂载错误,Helper 的所有修改都不会在 Sun-Panel 中生效!

如果 Sun-Panel 的 custom 目录不存在,需要手动在 Sun-Panel 的 conf 目录下创建。

部署配置

标准模式配置

创建 docker-compose.yml 文件:

version: '3'
services:
  sun-panel-helper:
    image: madrays/sun-panel-helper:latest
    container_name: sun-panel-helper
    environment:
      - BACKEND_PORT=3001  # 后端服务端口,可自定义修改避免冲突
    ports:
      - "33002:80"        # 前端页面访问端口,可自定义修改避免冲突
    volumes:
      - ./data:/app/backend/data            # 必须挂载:Helper的数据目录
      - ./backups:/app/backend/backups      # 必须挂载:Helper的备份目录
      - /path/to/sunpanel/conf/custom:/app/backend/custom  # 必须挂载:Sun-Panel的custom目录
    restart: unless-stopped

注意

上述配置中,/path/to/sunpanel/conf/custom 必须替换为您的 Sun-Panel 实际 custom 目录的绝对路径! 而 ./data 和 ./backups 是相对路径,指向您为Helper创建的数据目录。

Host 网络模式配置

如果需要使用 Host 网络模式(比如 IPv6 环境),创建如下配置:

version: '3'
services:
  sun-panel-helper:
    image: madrays/sun-panel-helper:latest
    container_name: sun-panel-helper
    network_mode: host    # 使用Host网络模式
    environment:
      - BACKEND_PORT=3001     # 后端服务端口
      - FRONTEND_PORT=33002   # 前端页面访问端口(Host模式必须设置)
    volumes:
      - ./data:/app/backend/data            # 必须挂载:Helper的数据目录
      - ./backups:/app/backend/backups      # 必须挂载:Helper的备份目录
      - /path/to/sunpanel/conf/custom:/app/backend/custom  # 必须挂载:Sun-Panel的custom目录
    restart: unless-stopped

目录挂载说明

必须挂载的目录

必须挂载

以下目录必须挂载,否则会导致数据丢失、备份功能无法使用或 Helper 功能无法生效!

./data:/app/backend/data - Helper的数据目录,用于存储用户配置和设置

./backups:/app/backend/backups - Helper的备份目录,用于存储自动和手动备份

/path/to/sunpanel/conf/custom:/app/backend/custom - 必须指向 Sun-Panel 的 custom 目录

custom 目录特别说明

/app/backend/custom 必须挂载到 Sun-Panel 的 custom 目录,这是 Helper 与 Sun-Panel 交互的关键。 如果此目录挂载错误,Helper 的所有修改都不会在 Sun-Panel 中生效!

如果 Sun-Panel 的 custom 目录不存在,需要手动在 Sun-Panel 的 conf 目录下创建。

而 data 和 backups 目录是 Helper 自己的数据目录,需要您自己创建,不是 Sun-Panel 的目录。

部署命令

启动服务

# 在 docker-compose.yml 所在目录执行
docker-compose up -d

查看日志

# 查看所有日志
docker-compose logs

# 查看实时日志
docker-compose logs -f

# 查看最近 100 行日志
docker-compose logs --tail=100

停止服务

docker-compose down

重启服务

docker-compose restart

更新镜像

# 拉取最新镜像
docker-compose pull

# 使用新镜像重新创建容器
docker-compose up -d

常见问题

1. 配置文件权限

确保 docker-compose.yml 的权限正确:

chmod 644 docker-compose.yml

2. 目录权限

确保挂载目录的权限正确:

# Helper自己的数据目录
chmod -R 755 data
chmod -R 755 backups
# Sun-Panel的custom目录
chmod -R 755 /path/to/sunpanel/conf/custom  # 确保Sun-Panel的custom目录权限正确

3. 端口冲突

如果端口被占用,修改 docker-compose.yml 中的端口映射:

ports:
  - "33003:80"  # 将 33002 改为其他可用端口

4. Helper 功能不生效

检查 custom 目录是否正确挂载到 Sun-Panel 的 custom 目录。确保:

custom 目录路径正确指向 Sun-Panel 的 conf/custom 目录

Sun-Panel 可以访问此目录(权限正确)

如果 Sun-Panel 的 custom 目录不存在,需要手动创建

目录结构说明

从 v2.0.5 版本开始,Sun-Panel-Helper 引入了新的目录结构,以提供更好的数据持久化和备份功能。本文将详细介绍新的目录结构和挂载要求。

必要挂载目录

/app/backend/data

必须挂载

这是Helper存储用户核心数据的目录,必须挂载,否则每次重启或升级容器会丢失配置!这个目录是Helper自己的目录,需要您自己创建,不是Sun-Panel的目录。

/app/backend/backups

必须挂载

这是Helper存储备份文件的目录,必须挂载,否则无法保留历史备份!这个目录是Helper自己的目录,需要您自己创建,不是Sun-Panel的目录。

用途:存储自动和手动备份文件

数据类型:ZIP 格式备份文件

重要性:必须挂载,确保数据安全

创建方式:需要用户自行创建此目录,它属于Helper,不是Sun-Panel的目录

/app/backend/custom

必须挂载

这是 Sun-Panel 的 custom 目录,必须正确挂载,否则 Helper 的所有修改都无法生效!这个目录必须指向Sun-Panel的custom目录,不是Helper自己的目录。

用途:与 Sun-Panel 交互的关键目录,所有自定义组件和美化功能都通过此目录实现

数据类型:自定义组件配置、JS、CSS 等

重要性:必须挂载,这是 Helper 功能生效的基础,必须指向 Sun-Panel 的 custom 目录

注意事项:必须指向 Sun-Panel 的 conf 目录下的 custom 文件夹,如:/path/to/sunpanel/conf/custom

数据说明

/app/backend/data 目录

此目录包含以下重要数据:

用户配置文件

应用程序设置

组件配置和布局信息

其他核心运行数据

提示

这是Helper自己的数据目录,需要用户自行创建。这不是Sun-Panel的目录。

/app/backend/backups 目录

此目录存储两类备份:

自动备份:系统每小时自动创建,最多保留 100 个

手动备份:用户手动创建,永久保存不会被自动清理

提示

这是Helper自己的备份目录,需要用户自行创建。这不是Sun-Panel的目录。

/app/backend/custom 目录

特别重要

这个目录必须指向 Sun-Panel 的 custom 目录!Helper 的所有功能都依赖于此目录与 Sun-Panel 的正确交互。这不是Helper自己的目录,而是必须指向Sun-Panel的目录。

此目录用于:

存储 Helper 生成的自定义组件代码

应用美化样式和功能

实现 Sun-Panel 与 Helper 的交互

部署所有自定义配置到 Sun-Panel

如果此目录指向错误,Helper 的所有修改都不会在 Sun-Panel 中生效。

容器内其他目录(不需要挂载)

容器内还有一些其他目录,这些目录通常不需要挂载:

/app/frontend:前端代码目录

/app/nginx:Nginx 配置目录

/etc/nginx:Nginx 系统配置

注意

不建议挂载非文档明确指定的目录,可能会导致容器运行异常。