本文教你如何在命令行使用docker-compose + sqlite来快速部署Xboard
安装后再迁移Mysql。

Xboard部署

在此提供Xboard安装、快速体验Xboard的步骤。
使用docker compose + sqlite 快速部署站点

需要先新建名字为xboard的MySQL数据库

如果要直接还原旧的Xboard的MySQL数据库,需要提前导入

  1. 安装docker

curl -sSL https://get.docker.com | bash
systemctl enable docker
systemctl start docker

  1. 获取Docker compose 文件

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

给大家展示 docker-compose.yml

version: '3'
services:
  xboard:
    image: ghcr.io/cedar2025/xboard:latest
    volumes:
      - ./.env:/www/.env
      - ./.docker/.data/:/www/.docker/.data/
      # - ./config/v2board.php:/www/config/v2board.php
      - redis-socket:/run/redis-socket # 挂载socket
    environment:
      - docker=true #用于给安装脚本判断是否为docker环境
    depends_on:
      - redis
    network_mode: host
    restart: always
  redis:
    build: 
      context: .docker/services/redis
    restart: always
    volumes:
      - ./.docker/.data/redis:/data/ # 挂载redis持久化数据
      - redis-socket:/run/redis-socket # 挂载socket
volumes:
  redis-socket:

  1. 执行数据库安装命令

选择 启用sqlite 和 Docker内置的Redis

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

执行这条命令之后,会返回你的后台地址和管理员账号密码(你需要记录下来)
你需要执行下面的 启动xborad 步骤之后才能访问后台

是否启用Sqlite(无需额外安装)代替Mysql,这里默认回车是不启用,然后输入xboard数据库信息

_    __ ____                      _  
\ \  / /| __ )  ___   __ _ _ __ __| | 
 \ \/ / | __ \ / _ \ / _` | '__/ _` | 
 / /\ \ | |_) | (_) | (_| | | | (_| | 
/_/  \_\|____/ \___/ \__,_|_|  \__,_| 

#按回车不启用即可

 ┌ 是否启用Sqlite(无需额外安装)代替Mysql ───────────────────────┐
 │ 不启用                                                       │
 └──────────────────────────────────────────────────────────────┘

 ┌ 请输入数据库地址 ────────────────────────────────────────────┐
 │ 127.0.0.1                                                    │
 └──────────────────────────────────────────────────────────────┘

 ┌ 请输入数据库端口 ────────────────────────────────────────────┐
 │ 3306                                                         │
 └──────────────────────────────────────────────────────────────┘

 ┌ 请输入数据库名 ──────────────────────────────────────────────┐
 │ xboard                                                       │
 └──────────────────────────────────────────────────────────────┘

 ┌ 请输入数据库用户名 ──────────────────────────────────────────┐
 │ xboard                                                       │
 └──────────────────────────────────────────────────────────────┘

 ┌ 请输入数据库密码 ────────────────────────────────────────────┐
 │ xboard                                          │
 └──────────────────────────────────────────────────────────────┘

#默认回车启用即可

 ┌ 是否启用Docker内置的Redis ───────────────────────────────────┐
 │ 启用                                                         │
 └──────────────────────────────────────────────────────────────┘

 ┌ 请输入管理员账号 ────────────────────────────────────────────┐
 │ [email protected]    

  1. 启动Xboard

docker compose up -d

安装完成之后即可访问你的站点

  1. 访问站点

启动之后网站端口默认为7001, 你可以配置nginx反向代理使用80端口

网站地址: http://你的IP:7001/
在此你已经成功部署了, 你可以访问网址体验Xboard的完整功能,

接下来迁移V2borad 1.7.4/V2borad 1.7.3

从v2voard迁移

针对docker与非docker用户提供不同的迁移步骤,下面演示docker部署的迁移方法

数据库迁移

以下命令需要你打开SSH进入到项目目录进行执行

  1. 停止Xboard

docker compose down
  1. 清空数据库

docker compose run -it --rm xboard php artisan db:wipe
  1. 导入旧数据库(重要)

包宝塔-数据库-导入你1.7.4/1.7.3 v2board的数据库到当前项目数据库当中

  1. 执行迁移命令

docker compose run -it --rm xboard php artisan migratefromv2b 1.7.4

config/v2board.php 迁移

xboard将配置储存到数据库了, 不再使用file进行储存,你需要对配置文件进行迁移。

  1. 在xboard 目录下创建 config文件夹

  2. 复制旧项目的 v2board.php 到config目录,即/config/v2board.php

  3. (删除 "#")docker-compose.yaml 取消下面代码的注释

  # - ./config/v2board.php:/www/config/v2board.php

修改后的docker-compose.yml

version: '3'
services:
  xboard:
    image: ghcr.io/cedar2025/xboard:latest
    volumes:
      - ./.env:/www/.env
      - ./.docker/.data/:/www/.docker/.data/
      - ./config/v2board.php:/www/config/v2board.php
      - redis-socket:/run/redis-socket # 挂载socket
    environment:
      - docker=true #用于给安装脚本判断是否为docker环境
    depends_on:
      - redis
    network_mode: host
    restart: always
  redis:
    build: 
      context: .docker/services/redis
    restart: always
    volumes:
      - ./.docker/.data/redis:/data/ # 挂载redis持久化数据
      - redis-socket:/run/redis-socket # 挂载socket
volumes:
  redis-socket:

  1. 执行下面的命令即可完成迁移

docker compose down
docker compose run -it --rm xboard php artisan migrateFromV2b config 
docker compose up -d

完成!

注意

修改后台路径需要重启才能生效

docker compose restart

接入Token188支付

wget -O Token188.php https://raw.githubusercontent.com/utgpay2/V2Boardusdtapi/main/Token188.php && chmod 777 Token188.php &&
docker cp ./Token188.php xboard-xboard-1:/www/app/Payments
docker exec -it xboard-xboard-1 ls /www/app/Payments

官方文档

安装指南v2b迁移指南config迁移指南

Token188