
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
基于https://hub.docker.com/_/alpine/%E7%9A%84Seafile%E6%9C%8D%E5%8A%A1%E5%99%A8Docker%E9%95%9C%E5%83%8F%E3%80%82
设置以下卷/端口映射:
基于此镜像的容器将在首次运行时自动配置Seafile环境。如果Seafile环境来自旧版本,容器将自动将其升级到最新版本(通过调用Seafile升级脚本)。
此镜像使用2个TCP端口:
如果需要运行seafdav(Seafile的WebDAV服务),还将使用8080端口。
此镜像使用一个内部路径为/home/seafile的卷。
建议使用主机目录映射或命名卷来运行容器,以避免在镜像更新和启动新容器后丢失重要数据。
对于Web服务器配置,媒体目录位置应设置为<卷路径>/seafile-server/seahub/media。
在https://github.com/VGoshev/seafile-docker/blob/master/httpd-conf/%E7%9B%AE%E5%BD%95%E4%B8%AD%E5%8F%AF%E4%BB%A5%E6%89%BE%E5%88%B0lighttpd%E7%9A%84https://github.com/VGoshev/seafile-docker/blob/master/httpd-conf/lighttpd.conf.example%E5%92%8Chaaproxy%E7%9A%84https://github.com/VGoshev/seafile-docker/blob/master/httpd-conf/haproxy.cfg%E3%80%82
Nginx和Apache的配置可在Seafile Server官方手册中找到:
运行容器时,可以通过docker run命令的--env选项传递以下环境变量:
INTERACTIVE=<0|1> - 容器是否在首次运行时询问配置值以及升级相关问题。默认值:1SERVER_NAME=<...> - Seafile服务器名称(3-15个字母或数字),仅在非交互模式下首次运行时使用。默认值:SeafileSERVER_DOMAIN=<...> - Seafile服务器的域名或IP,仅在非交互模式下首次运行时使用。默认值:seafile.domain.comSEAHUB=<fastcgi> - 是否以FastCGI模式启动seahub(设置为"fastcgi"启用FastCGI模式,留空则禁用)。默认值:空(非FastCGI模式)SEAFILE_FASTCGI_HOST=<ip> - FastCGI模式下seahub的绑定IP。默认值:127.0.0.1HANDLE_SIGNALS=<0|1> - 容器是否正确处理SIGHUP和SIGTERM等信号(例如docker stop命令会发送SIGTERM)。启用信号处理后,脚本将运行无限循环等待信号,理论上可能略微增加容器的CPU消耗。默认值:1(启用)在容器内的seafile用户主目录中,可以使用以下有用命令:
seafile-fsck - 检查库错误(基于seaf-fsck.sh)seafile-gc - 从Seafile库存储中删除旧的未使用数据(基于seaf-gc.sh)seafile-admin start - 启动seafile和seahub守护进程(如果已停止)seafile-admin stop - 停止seafile和seahub守护进程seafile-admin reset-admin - 重置Seafile管理员用户和/或密码seafile-admin setup - 设置ccnet、seafile和seahub服务(如果未自动配置)seafile-admin create-admin - 创建Seafile管理员用户(如果未自动创建)确保挂载的数据卷和文件对容器的seafile用户(2016:2016)具有读写权限。
如果要运行默认禁用的seafdav,可参考其手册,并记得开放8080端口。
如果不希望容器在镜像(和Seafile服务器)更新时自动升级Seafile环境,可在容器的/home/seafile目录中创建名为.no-update的空文件。可使用命令**docker exec <容器名称> touch /home/seafile/.no-update**实现。
容器使用seafile用户运行Seafile,如需在容器中获取root权限,可使用**docker exec -ti --user=0 <容器名称> /bin/sh**。
首次运行(以及每次镜像升级)时,容器会将seahub目录从/usr/local/share/seahub复制到/home/seafile/seafile-server/seahub(即卷中),占用约40MB空间。
目前大多数Seafile脚本(位于/usr/local/share/seafile/scripts目录)无法正常工作,但这些脚本对此镜像并非必需(seaf-fsck.sh和seaf-gc.sh可正常工作,且分别作为/usr/local/bin/seafile-fsck和/usr/local/bin/seafile-gc提供)。
此镜像默认配置基于SQLite的Seafile服务器。如需使用MySQL/MariaDB运行Seafile服务器,需手动配置。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 freenas/seafile 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: