如何用1Panel部署Xboard?

1Panel 快速部署指南

本指南详述如何通过 1Panel 部署 Xboard。

  1. 环境准备

安装 1Panel:

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh &&
sudo bash quick_start.sh

  1. 环境配置

从应用商店安装:

  • OpenResty(任意版本)
    :warning: 请勾选“外部端口访问”以开启防火墙
  • MySQL 5.7(ARM 架构请使用 MariaDB)

创建数据库:

  • 数据库名称:xboard
  • 用户名:xboard
  • 访问权限:所有主机(%)
  • 请妥善保存数据库密码以备安装之用
  1. 部署步骤

添加网站:

  • 导航至“网站” > “创建网站” > “反向代理”
  • 域名:输入您的域名
  • 代码:xboard
  • 代理地址:127.0.0.1:7001

配置反向代理:

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;
}

安装 Xboard:

# 进入站点目录
cd /opt/1panel/apps/openresty/openresty/www/sites/xboard/index

# 安装 Git(若未安装)
## Ubuntu/Debian
apt update && apt install -y git
## CentOS/RHEL
yum update && yum install -y git

# 克隆代码库
git clone -b compose --depth 1 https://github.com/cedar2025/Xboard ./

配置 Docker Compose:

编辑 docker-compose.yml 文件如下:

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

初始化安装:

# 安装依赖并初始化
docker compose run -it --rm web php artisan xboard:install

:warning: 重要配置说明:

数据库配置

  • 数据库主机:根据部署情况选择:
    • 若数据库与 Xboard 在同一网络内,使用 mysql
    • 若连接失败,前往:数据库 → 选择数据库 → 连接信息 → 容器连接,使用“主机”值
    • 若使用外部数据库,输入实际数据库主机
  • 数据库端口:3306(默认端口,除非另行配置)
  • 数据库名称:xboard(之前创建的数据库)
  • 数据库用户:xboard(之前创建的用户)
  • 数据库密码:输入之前保存的密码

Redis 配置

  • 选择使用内置 Redis
  • 无需额外配置

管理员信息

  • 保存安装后显示的管理员凭据
  • 记下管理面板访问网址

配置完成后,启动服务:

docker compose up -d
  1. 版本更新

:light_bulb: 重要提示:更新命令因安装版本不同而异:

  • 若为近期安装(新版本),使用以下命令:
    docker compose pull && \
    docker compose run -it --rm web php artisan xboard:update && \
    docker compose up -d
    
  • 若为早期安装(旧版本),将 web 替换为 xboard
    docker compose pull && \
    docker compose run -it --rm xboard php artisan xboard:update && \
    docker compose up -d
    
  • :thinking: 不确定使用哪个命令?请先尝试新版本命令,若失败则改用旧版本命令。

重要注意事项

  • :warning: 确保防火墙已启用,以防止端口 7001 暴露于公网
  • 代码修改后需重启服务
  • 建议配置 SSL 证书以确保安全访问