From 94cd289b660155aa4c2887065e9ce541f8e7b97d Mon Sep 17 00:00:00 2001 From: yuany3721 Date: Fri, 19 Dec 2025 18:43:52 +0800 Subject: [PATCH] Add configurable file directory mapping --- .env.example | 6 +++++- DEPLOYMENT.md | 9 +++++---- docker-compose.yml | 2 +- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.env.example b/.env.example index 2993859..4c4d2a2 100644 --- a/.env.example +++ b/.env.example @@ -7,4 +7,8 @@ FILE_LIST_PASSWORD=your_secure_password_here # 端口配置 # 容器对外暴露的端口(修改后需要更新 docker-compose.yml 中的端口映射) -EXTERNAL_PORT=80 \ No newline at end of file +EXTERNAL_PORT=80 + +# 文件存储配置 +# 容器外映射的文件存储目录(相对路径或绝对路径) +FILES_DIR=./files \ No newline at end of file diff --git a/DEPLOYMENT.md b/DEPLOYMENT.md index df0ced7..5f2bb35 100644 --- a/DEPLOYMENT.md +++ b/DEPLOYMENT.md @@ -26,8 +26,8 @@ openssl rand -base64 32 ### 2. 文件权限设置 ```bash -# 创建文件目录 -mkdir -p files +# 创建文件目录(根据 .env 中的 FILES_DIR 配置) +mkdir -p ${FILES_DIR:-./files} # 设置适当的权限 chmod 755 files @@ -68,6 +68,7 @@ curl http://localhost/api/health | `APP_NAME` | 应用名称 | Vue3 Python Notepad | 否 | | `FILE_LIST_PASSWORD` | 文件列表访问密码 | your_secure_password_here | **是** | | `EXTERNAL_PORT` | 容器对外暴露的端口 | 80 | 否 | +| `FILES_DIR` | 文件存储目录(宿主机路径) | ./files | 否 | ## 安全建议 @@ -78,8 +79,8 @@ curl http://localhost/api/health - 配置反向代理(Nginx/Traefik) - 申请 SSL 证书(Let's Encrypt) -3. **备份策略** - - 定期备份 `./files` 目录 +4. **备份** + - 定期备份 `FILES_DIR` 配置的目录 - 备份 `.env` 文件(存储在安全位置) 4. **监控** diff --git a/docker-compose.yml b/docker-compose.yml index f304cd6..ca6b488 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,7 +8,7 @@ services: container_name: notepad-backend restart: unless-stopped volumes: - - ./files:/app/data + - ${FILES_DIR:-./files}:/app/data env_file: - .env networks: