DockerCompose部署Xboard并迁移v2board数据
本文教你如何在命令行使用docker-compose + sqlite来快速部署Xboard
安装后再迁移Mysql。
Xboard部署
在此提供Xboard安装、快速体验Xboard的步骤。
使用docker compose + sqlite 快速部署站点需要先新建名字为xboard的MySQL数据库
如果要直接还原旧的Xboard的MySQL数据库,需要提前导入
安装docker
curl -sSL https://get.docker.com | bash
systemctl enable docker
systemctl start docker
获取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:
执行数据库安装命令
选择 启用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]
启动Xboard
docker compose up -d
安装完成之后即可访问你的站点
访问站点
启动之后网站端口默认为7001, 你可以配置nginx反向代理使用80端口
网站地址: http://你的IP:7001/
在此你已经成功部署了, 你可以访问网址体验Xboard的完整功能,
接下来迁移V2borad 1.7.4/V2borad 1.7.3
从v2voard迁移
针对docker与非docker用户提供不同的迁移步骤,下面演示docker部署的迁移方法
数据库迁移
以下命令需要你打开SSH进入到项目目录进行执行
停止Xboard
docker compose down
清空数据库
docker compose run -it --rm xboard php artisan db:wipe
导入旧数据库(重要)
包宝塔-数据库-导入你1.7.4/1.7.3 v2board的数据库到当前项目数据库当中
执行迁移命令
docker compose run -it --rm xboard php artisan migratefromv2b 1.7.4
config/v2board.php 迁移
xboard将配置储存到数据库了, 不再使用file进行储存,你需要对配置文件进行迁移。
在xboard 目录下创建 config文件夹
复制旧项目的 v2board.php 到config目录,即
/config/v2board.php
(删除 "#")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:
执行下面的命令即可完成迁移
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迁移指南