# AudioDock **Repository Path**: xiaofan797/AudioDock ## Basic Information - **Project Name**: AudioDock - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-03 - **Last Updated**: 2026-08-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## License This project is licensed under a **Personal-Use Only License**. - 个人免费、可修改、可分发 - 商业使用需获得作者授权 查看完整协议请见:**[LICENSE](./LICENSE)**。 # AudioDock
产品动态欢迎关注官方公众号:声仓
## 页面操作指南 - 需要先设置后端服务地址,然后登陆,没有就先注册 - 注册成功后刷新页面即可 ## NAS 部署指南 - 先拉取镜像 - 复制 docker-compose.yml 文件内容到 NAS 上启动(一般是创建项目的位置) - 记得修改文件映射路径 - 复制 nginx.conf 到 NAS 上可访问文件根目录 - 创建服务即可 > 文件目录配置:环境变量 `TXT_BASE_DIR` / `AUDIO_BOOK_DIR` / `MUSIC_BASE_DIR` / `MV_BASE_DIR` 直接控制服务端媒体目录路径,相对路径以 api 子项目目录为基准解析。 ```yaml version: "3.8" services: app: platform: linux/amd64 image: mmdctjj/audiodock container_name: audiodock-app ports: - "8860:3000" # Node API - "9961:9958" # Web UI environment: - NODE_ENV=production - TXT_BASE_DIR=/txt # 电子书目录 - AUDIO_BOOK_DIR=/audio # 有声书目录 - MUSIC_BASE_DIR=/music # 音乐目录 - MV_BASE_DIR=/mv # mv视频目录 - CACHE_DIR=/covers # 封面目录 - DATABASE_URL=file:/data/dev.db # 数据库 - JWT_SECRET=/.jwt_secret # 这个是文件,不是目录 - PORT=3000 - DISABLE_TTS=${DISABLE_TTS:-false} # 是否禁用 tts 服务,不用tts功能可注释 - DISABLE_ASR=${DISABLE_ASR:-false} # 是否禁用 tts 服务,不用语音助手可注释 - DISABLE_MI=${DISABLE_MI:-false} # 是否禁用 mi 服务,不用小爱音箱功能可注释 - VOICE_KEYWORDS=小苍小苍 # 语音唤醒关键词,多个用英文逗号分隔,按最长匹配优先 # 挂载数据文件和缓存,使用 Docker 命名卷更安全 volumes: # 这里可以根据需要调整物理机的挂载路径 - /volume1/迅雷下载/TXT:/txt - /volume1/迅雷下载/有声书:/audio - /volume1/迅雷下载/音乐:/music - /volume1/迅雷下载/MV:/mv - ./covers:/covers - app-db:/data - ./.jwt_secret:/.jwt_secret restart: unless-stopped networks: - audiodock-network volumes: app-db: # 命名卷用于持久化数据库,下面的两行是保留旧数据的关键,没有旧数据 external: true # 如果新部署,请注释, name: audiodock2_api-db # audiodock2 是我的旧 compose 名称,请相应的替换下 networks: audiodock-network: driver: bridge ``` ## 本地运行 ### 前置要求 - Node.js (推荐 v22+) - pnpm (推荐 v10+) - Docker (可选,用于本地数据库或完整部署) ### 运行 - 复制 services/api、 packages/db 包 根目录下的 .env.example 文件,修改名称为 .env - 修改下面文件路径 ``` AUDIO_BOOK_DIR=./music/audio MUSIC_BASE_DIR=./music/music CACHE_DIR=./music/cover ``` 然后运行下面的命令,自动打开桌面端 ```bash nvm use 22 pnpm install npm run dev ``` 移动端需要进入 /apps/mobile 目录启动: ``` npx expo run:ios --device ``` ## docker 启动 修改 docker-compose 的环境变量 和 volumes: ``` environment: - AUDIO_BOOK_DIR=/audio - MUSIC_BASE_DIR=/music - CACHE_DIR=/covers - DATABASE_URL=file:/data/dev.db - JWT_SECRET=/.jwt_secret # JWT 密钥 # 多目录示例(使用英文逗号或分号分隔) # environment: # - AUDIO_BOOK_DIR=/audio,/audio2 # - MUSIC_BASE_DIR=/music,/music2 # - TXT_BASE_DIR=/txt,/txt1 # 挂载数据文件和缓存,使用 Docker 命名卷更安全 volumes: - ./audio:/audio - ./music:/music - ./covers:/covers - api-db:/data - ./jwt_secret:/.jwt_secret # 多目录示例:每个宿主目录需要挂载到不同的容器路径 # volumes: # - ./audio:/audio # - ./audio2:/audio2 # - ./music:/music # - ./music2:/music2 # - ./txt:/txt # - ./txt1:/txt1 # - ./covers:/covers # - api-db:/data # - ./jwt_secret:/.jwt_secret ``` 根目录下运行构建命令: ``` docker-compose build --no-cache docker-compose up ```