Mysql 部署
本项目默认采用Sqlite数据库,sqlite 在并发写入时容易出现sqlite database is locked,因此支持提供替换成为 msyql 数据库
方法一(推荐)
编写 docker-compose.yml 文件
version: '3'
services:
# MySQL 数据库服务
db:
image: mysql:latest
container_name: mysql
restart: always
command: #使用 command 可以覆盖容器启动后默认执行的命令
--character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci
environment:
MYSQL_ROOT_PASSWORD: your_root_password # 修改为你的 MySQL 密码
MYSQL_DATABASE: music_tag # 数据库名称,无需修改
volumes:
- ./mysql-data:/var/lib/mysql # 数据持久化存储目录
# Music Tag Web 服务
music-tag:
image: xhongc/music_tag_web:latest
container_name: music-tag-web
ports:
- "8002:8002" # 主机端口:容器端口
volumes:
- /path/to/your/music:/app/media # 修改为你的音乐文件目录
- /path/to/your/config:/app/data # 修改为你的配置文件存储目录
environment:
- MYSQL_HOST=db # 数据库主机名,使用服务名, 不需要修改
- MYSQL_PASSWORD=your_root_password # 与上面的 MySQL 密码一致
- MYSQL_DB_NAME=music_tag # 数据库名称,无需修改
- MYSQL_USER=root # MySQL 用户名,无需修改
- MYSQL_PORT=3306 # MySQL 端口,无需修改
- WORKER_NUM=8 # 后台任务工作线程数,可根据服务器性能调整
restart: always
depends_on:
- db # 依赖于 MySQL 服务修改配置说明
启动容器
方法二
安装Mysql
docker命令
docker compose 命令
在 Music Tag Web 中配置 mysql
docker 命令
docker compose 命令
Last updated