- 基于 NestJS + TypeScript + MySQL + Redis 架构 - 完整的模块化设计(认证、用户、小组、游戏、预约等) - JWT 认证和 RBAC 权限控制系统 - Docker 容器化部署支持 - 添加 CLAUDE.md 项目开发指南 - 配置 .gitignore 忽略文件 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
51 lines
1.3 KiB
Bash
51 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
echo "=========================================="
|
|
echo "启动 MySQL Docker 容器"
|
|
echo "=========================================="
|
|
echo ""
|
|
|
|
# 停止并删除旧容器
|
|
echo "清理旧容器..."
|
|
docker stop gamegroup-mysql 2>/dev/null || true
|
|
docker rm gamegroup-mysql 2>/dev/null || true
|
|
|
|
# 启动新容器
|
|
echo "启动 MySQL 容器..."
|
|
docker run -d \
|
|
--name gamegroup-mysql \
|
|
--restart always \
|
|
-p 3306:3306 \
|
|
-e MYSQL_ROOT_PASSWORD=root \
|
|
-e MYSQL_DATABASE=gamegroup \
|
|
-e MYSQL_USER=gamegroup \
|
|
-e MYSQL_PASSWORD=gamegroup123 \
|
|
-v gamegroup-mysql-data:/var/lib/mysql \
|
|
-v "$(pwd)/database/init.sql:/docker-entrypoint-initdb.d/init.sql" \
|
|
mysql:8.0 \
|
|
--default-authentication-plugin=mysql_native_password \
|
|
--character-set-server=utf8mb4 \
|
|
--collation-server=utf8mb4_unicode_ci
|
|
|
|
echo ""
|
|
echo "✓ MySQL 容器已启动"
|
|
echo ""
|
|
|
|
# 等待 MySQL 启动
|
|
echo "⏳ 等待 MySQL 初始化..."
|
|
sleep 15
|
|
|
|
echo ""
|
|
echo "容器状态:"
|
|
docker ps | grep gamegroup-mysql
|
|
|
|
echo ""
|
|
echo "测试数据库连接..."
|
|
sleep 5
|
|
|
|
docker exec gamegroup-mysql mysql -u gamegroup -pgamegroup123 -e "SHOW DATABASES;" 2>/dev/null && echo "✅ 连接成功!" || echo "❌ 连接失败,请查看日志"
|
|
|
|
echo ""
|
|
echo "如需查看日志,执行:"
|
|
echo " docker logs gamegroup-mysql"
|