Xboard前端-1Panel部署

1. 环境准备

  1. 执行以下命令安装 1panel:

    1
    curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
  2. 安装完成后,登录 1panel 进行环境的安装。


1Panel 集成了两种广泛使用的 Linux 防火墙软件:Firewalld 和 UFW

  • RedHat/CentOS 使用的是 Firewall 防火墙。
  • Debian/Ubuntu使用的是 UFW 防火墙。

Ubuntu / Debian安装:

1、更新软件包

1
`sudo apt update`

2、安装 UFW

1
`sudo apt install ufw`

3、如果你在远程位置连接你的服务器,在启用 UFW 防火墙之前,你必须显式允许进来的 SSH 连接。否则,你将永远都无法连接到机器上。

1
`sudo ufw allow 22/tcp`

如果 SSH 运行在非标准端口,你需要将上述命令中的 22 端口替换为对应的 SSH 端口。

4、放开 1Panel 系统端口。

1
`sudo ufw allow 8090/tcp`

上述命令中的 8090 端口需要替换为安装 1Panel 系统时自定义的端口。

5、启动 UFW

1
`sudo ufw enable`

2. 环境配置

  1. 打开应用商店安装:

    • OpenResty (任何版本)
      • ⚠️勾选 [外部端口访问] 以打开防火墙
    • MySQL 5.7.*(arm 架构可以选择 mariadb 进行代替)
    • 安装过程中配置默认即可。
  2. 创建数据库:

    • 在 1panel 面板中,选择“数据库”并点击“创建数据库”。
    • 数据库名称:xboard
    • 用户名:xboard
    • 访问权限: 所有主机 (%)
    • 保存数据库密码以进行安装

3. 部署步骤

  1. 在 1panel 面板中,添加网站:

    • 转到“网站”>“创建网站”>“反向代理”
    • 在 “主域名” 中填写你指向服务器的域名
    • 在 “代号” 中填写:xboard
    • 在 “在代理地址” 中填写:127.0.0.1:7001
    • 最后点击“创建”按钮
  2. 配置反向代理,点击刚创建的网站的 “配置” > “反向代理” > “源文” 修改反向代理规则为以下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
location ^~ / {
proxy_pass http://127.0.0.1:7001;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-PORT $remote_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header Scheme $scheme;
proxy_set_header Server-Protocol $server_protocol;
proxy_set_header Server-Name $server_name;
proxy_set_header Server-Addr $server_addr;
proxy_set_header Server-Port $server_port;
proxy_cache off;
}

 

  1. 安装 Xboard:

        通过 SSH 登录到服务器后,访问站点路径如:

                cd /opt/1panel/apps/openresty/openresty/www/sites/xboard/index

        如果系统没有安装 git,请执行以下命令安装 git:

                Ubuntu/Debian:apt update && apt install -y git

                CentOS/RHEL:yum update && yum install -y git

        在站点目录中执行以下命令从 Github 克隆到当前目录:

               git clone -b compose --depth 1 https://github.com/cedar2025/Xboard ./

        打开文件编辑网站目录下的/index/compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
services:
web:
image: ghcr.io/cedar2025/xboard:new
volumes:
- ./.docker/.data/redis/:/data/
- ./.env:/www/.env
- ./.docker/.data/:/www/.docker/.data
- ./storage/logs:/www/storage/logs
- ./storage/theme:/www/storage/theme
- ./plugins:/www/plugins
environment:
- docker=true
depends_on:
- redis
command: php artisan octane:start --host=0.0.0.0 --port=7001
restart: on-failure
ports:
- 7001:7001
networks:
- 1panel-network

horizon:
image: ghcr.io/cedar2025/xboard:new
volumes:
- ./.docker/.data/redis/:/data/
- ./.env:/www/.env
- ./.docker/.data/:/www/.docker/.data
- ./storage/logs:/www/storage/logs
- ./plugins:/www/plugins
restart: on-failure
command: php artisan horizon
networks:
- 1panel-network
depends_on:
- redis

redis:
image: redis:7-alpine
command: redis-server --unixsocket /data/redis.sock --unixsocketperm 777 --save 900 1 --save 300 10 --save 60 10000
restart: unless-stopped
networks:
- 1panel-network
volumes:
- ./.docker/.data/redis:/data

networks:
1panel-network:
external: true
  1. 初始化安装:

docker compose run -it --rm web php artisan xboard:install

  1. 数据库配置

    • 数据库主机:根据您的部署进行选择:
      1. 如果 database 和 Xboard 在同一个网络中,请使用mysql
      2. 如果连接失败,请转到:数据库 -> 选择数据库 -> 连接信息 -> 容器连接,并使用 “Host” 值
      3. 如果使用外部数据库,请输入您的实际数据库主机
    • Database Port:(除非另有配置,否则默认端口)3306
    • Database Name:(之前创建的数据库)xboard
    • Database User:(之前创建的用户)xboard
    • 数据库密码:输入之前保存的密码(可以通过1Panel的数据库页面查看)
  2. Redis 配置

    • 选择使用内置 Redis
    • 无需额外配置
  3. 管理员信息

    • 保存安装后显示的管理员凭据
    • 记下管理面板访问 URL
  4. 配置完成后,启动服务:

1
docker compose up -d

重要说明

  • ⚠️确保启用防火墙以防止端口 7001 向公众公开
  • 修改代码后记得需要重启服务docker compose down>docker compose up -d
  • 建议使用 SSL 证书配置以实现安全访问