
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
一个强大的RESTful API服务,用于管理文件和目录,专为Unraid服务器设计,但可在任何Linux系统上运行。基于FastAPI构建,针对Docker部署进行了优化。
!https://img.shields.io/docker/pulls/jandrop/file-manager-api !https://img.shields.io/docker/image-size/jandrop/file-manager-api !https://img.shields.io/badge/license-MIT-blue.svg
bashdocker run -d \ --name file-manager-api \ -p 8000:8000 \ -v /mnt/user:/mnt/user \ -e BASE_PATH=/mnt/user \ -e API_KEY=your_secret_key \ docker.xuanyuan.run/jandrop/file-manager-api:latest
访问API文档:http://localhost:8000/docs
创建docker-compose.yml文件:
yamlversion: '3.8' services: file-manager-api: image: docker.xuanyuan.run/jandrop/file-manager-api:latest container_name: file-manager-api ports: - "8000:8000" environment: - BASE_PATH=/mnt/user - API_KEY=your_secret_key_here - MAX_UPLOAD_SIZE=10737418240 # 10GB - ENABLE_FILE_DELETION=true - ENABLE_RECURSIVE_DELETE=true volumes: - /mnt/user:/mnt/user restart: unless-stopped
然后运行:
bashdocker-compose up -d
| 变量 | 描述 | 默认值 |
|---|---|---|
BASE_PATH | 文件操作的基础路径 | /mnt/user |
API_KEY | 认证用的API密钥(可选) | - |
MAX_UPLOAD_SIZE | 最大文件上传大小(字节) | 10737418240 (10GB) |
ENABLE_FILE_DELETION | 启用文件删除操作 | true |
ENABLE_RECURSIVE_DELETE | 启用递归目录删除 | true |
SHOW_HIDDEN_FILES | 默认显示隐藏文件 | false |
DEBUG | 启用调试模式 | false |
CORS_ORIGINS | 允许的CORS源(JSON数组) | ["http://localhost"] |
GET /api/v1/files/browse - 列出目录内容GET /api/v1/files/info - 获取文件/目录信息GET /api/v1/files/download - 下载文件POST /api/v1/files/upload - 上传文件DELETE /api/v1/files/file - 删除文件PUT /api/v1/files/rename - 重命名文件/目录POST /api/v1/files/move - 移动文件/目录POST /api/v1/files/copy - 复制文件/目录POST /api/v1/files/directory - 创建目录DELETE /api/v1/files/directory - 删除目录GET /api/v1/files/search - 搜索文件GET /api/v1/files/disk-usage - 获取磁盘使用信息GET /health - 健康检查端点bashcurl "http://localhost:8000/api/v1/files/browse?path=/mnt/user/documents"
bashcurl -X POST \ -H "X-API-Key: your_secret_key" \ -F "file=@/path/to/file.pdf" \ -F "destination_path=/mnt/user/uploads" \ http://localhost:8000/api/v1/files/upload
bashcurl -H "X-API-Key: your_secret_key" \ -O "http://localhost:8000/api/v1/files/download?path=/mnt/user/file.txt"
bashcurl "http://localhost:8000/api/v1/files/search?path=/mnt/user&query=*.pdf"
要启用API密钥认证,设置API_KEY环境变量:
bashdocker run -d \ -e API_KEY=your_secret_key \ docker.xuanyuan.run/jandrop/file-manager-api:latest
然后在请求中包含密钥:
bashcurl -H "X-API-Key: your_secret_key" \ http://localhost:8000/api/v1/files/browse?path=/mnt/user
挂载需要管理的文件系统目录:
bash# 适用于Unraid -v /mnt/user:/mnt/user # 适用于特定目录 -v /path/to/files:/mnt/user # 多个卷 -v /data:/data -v /media:/media
API包含健康检查端点/health:
bashcurl http://localhost:8000/health
响应:
json{ "status": "healthy", "base_path": "/mnt/user", "base_path_exists": true }
该镜像支持多种架构:
linux/amd64 (x86_64)linux/arm64 (ARM 64位,Apple Silicon,树莓派)Docker会自动为你的平台拉取正确的架构版本。
需要Web界面?可搭配File Manager UI使用:
yamlservices: file-manager-api: image: docker.xuanyuan.run/jandrop/file-manager-api:latest # ... 配置 file-manager-ui: image: docker.xuanyuan.run/jandrop/file-manager-ui:latest ports: - "8764:8764" depends_on: - file-manager-api
如果遇到权限问题:
bash# 查看容器日志 docker logs file-manager-api # 验证挂载路径是否存在 docker exec file-manager-api ls -la /mnt/user
BASE_PATH是否设置正确bash# 检查API是否响应 docker exec file-manager-api curl http://localhost:8000/health # 查看详细日志 docker logs file-manager-api
http://localhost:8000/docs访问(Swagger UI)http://localhost:8000/redoc访问(ReDoc)latest - 最新稳定版本1.x.x - 特定版本标签main - 最新开发构建基于FastAPI构建 • Docker驱动 • 针对Unraid优化
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务