mirror of
https://github.com/remvze/moodist.git
synced 2025-12-19 18:04:13 +00:00
🎉 版本升级: 2.5.0 → 3.0.0 🎵 音乐播放系统重构: - 独立的音乐播放系统,不影响当前选中声音 - 修复 React Hooks 调用错误 - 使用直接 Howl API 实现音频控制 - 添加播放/停止状态视觉反馈 - 组件显示逻辑完全分离 🐳 Docker 部署优化: - 所有 compose 文件添加 SQLite 数据库挂载 - 支持 WAL 模式和并发写入 - 数据持久化,容器重启不丢失数据 - 创建详细的 Docker 数据库挂载文档 🎨 UI/UX 改进: - 修复当前选中声音与音乐列表显示互斥问题 - 播放按钮状态动态显示 - 组件模块完全独立展示 🗄️ 数据库性能优化: - 启用 WAL 模式提高并发性能 - 优化 SQLite 配置参数 - 添加详细日志和错误处理 📦 新增文件: - docker-database-mount.md: Docker 数据库挂载说明文档
90 lines
No EOL
1.8 KiB
YAML
90 lines
No EOL
1.8 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
moodist-dev:
|
|
# 构建上下文
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.optimized
|
|
target: builder # 只构建到builder阶段用于开发
|
|
args:
|
|
- NODE_ENV=development
|
|
- BUILD_DATE=${BUILD_DATE:-$(date -u +'%Y-%m-%dT%H:%M:%SZ')}
|
|
- VERSION=dev
|
|
- VCS_REF=${VCS_REF:-dev}
|
|
|
|
container_name: moodist-dev
|
|
restart: unless-stopped
|
|
|
|
# 开发端口映射
|
|
ports:
|
|
- "3000:3000" # Astro开发服务器
|
|
- "8080:8080" # 预览服务器
|
|
|
|
# 开发环境变量
|
|
environment:
|
|
- NODE_ENV=development
|
|
- TZ=Asia/Shanghai
|
|
|
|
# 卷挂载用于开发
|
|
volumes:
|
|
- .:/app
|
|
- /app/node_modules # 防止node_modules被覆盖
|
|
- moodist-dist:/app/dist
|
|
# 挂载 SQLite 数据库文件目录
|
|
- ./data:/app/data:rw
|
|
|
|
# 工作目录
|
|
working_dir: /app
|
|
|
|
# 开发命令
|
|
command: npm run dev
|
|
|
|
# 健康检查
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:3000/"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 60s
|
|
|
|
# 开发资源配置
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: '1.0'
|
|
memory: 512M
|
|
reservations:
|
|
cpus: '0.25'
|
|
memory: 128M
|
|
|
|
# 日志配置
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-size: "5m"
|
|
max-file: "2"
|
|
|
|
networks:
|
|
- moodist-network
|
|
|
|
# 开发工具容器
|
|
dev-tools:
|
|
image: node:20-alpine
|
|
container_name: moodist-dev-tools
|
|
working_dir: /app
|
|
volumes:
|
|
- .:/app
|
|
networks:
|
|
- moodist-network
|
|
profiles:
|
|
- tools
|
|
command: sh -c "npm install && tail -f /dev/null"
|
|
|
|
volumes:
|
|
moodist-dist:
|
|
driver: local
|
|
|
|
networks:
|
|
moodist-network:
|
|
driver: bridge |