
jenserat/seafileSeafile 是一款"下一代开源云存储,具备高级文件同步、隐私保护和团队协作功能"。
本Docker镜像并非直接打包Seafile 5,而是提供运行Seafile所需的环境,包括启动脚本及所有依赖,支持SQLite或MySQL(需外部MySQL数据库,如另一容器)配置。
phusion/baseimage 构建在设置Seafile前,请先阅读Seafile官方安装手册。
该镜像仅准备基础系统并提供安装支持。需运行容器,暴露必要端口并将/opt/seafile目录持久化。设置、配置或更新Seafile时,需启动shell,可通过附加-- /bin/bash参数实现。
示例启动命令(交互式设置):
bashdocker run -t -i \ -p ***:*** \ -p ***:*** \ -p 8000:8000 \ -p 8080:8080 \ -p 8082:8082 \ -v /srv/seafile:/opt/seafile \ jenserat/seafile -- /bin/bash
建议使用反向代理配置HTTPS。
download-seafile下载Seafile并准备安装/opt/seafile/seafile-server-5.*/setup-seafile.sh,按安装向导操作。不要修改端口和存储位置默认值,如需变更请调整运行命令/opt/seafile/seafile-server-latest/seafile.sh start启动Seafile控制器进程/opt/seafile/seafile-server-latest/seahub.sh start配置Web UIexit退出容器如需使用memcached替代/tmp/seahub_cache/,在seahub_settings.py中添加:
pythonCACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': 'memcached:***', } }
启动容器时添加--link memcached_container:memcached链接memcached实例。
正常运行时无需交互式shell。设置环境变量autostart=true可自动启动seafile和seahub进程。
示例运行命令(后台模式):
bashdocker run -d \ --name seafile \ -p ***:*** \ -p ***:*** \ -p 8000:8000 \ -p 8080:8080 \ -p 8082:8082 \ -v /srv/seafile:/opt/seafile \ -e autostart=true \ jenserat/seafile
如需使用nginx反向代理,添加-e fastcgi=true启用FastCGI模式。
Seafile二进制文件存储在持久卷/opt/seafile中。
docker pull jenserat/seafile更新镜像,重新运行容器download-seafile命令可协助完成初始步骤在FastCGI模式下(如WebDAV代理推荐配置),seafdav仅监听localhost:8080,导致无法暴露。镜像内置解决方法:使用socat监听0.0.0.0:8080并转发至localhost:8081。
使用方法:
/opt/seafile/conf/seafdav.conf,将port改为8081-e workaround478=true启用解决方法





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务