11828
1
如题,飞牛os的Docker上部署seafile成功,但是每次重新启动后seahub都失败。不重启的情况下运行正常。哪位大神给看看那里出错了
Starting seahub at port 8000 …
Error:Seahub failed to start.
Please try to run “./seahub.sh start” again
Traceback (most recent call last):
File “/scripts/start.py”, line 94, in
main()
File “/scripts/start.py”, line 80, in main
call('{} start'.format(get_script('seahub.sh')))
File “/scripts/utils.py”, line 70, in call
return subprocess.check_call(*a, **kw)
File “/usr/lib/python3.10/subprocess.py”, line 369, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘/opt/seafile/seafile-server-11.0.13/seahub.sh start’ returned non-zero exit status 1.
进入/opt/seafile/conf目录,修改gunicorn.conf.py文件,daemon = False,这样你在执行./seahub.sh start 能看到详细的错误信息
11828
3
我在飞牛os上安装的,文件路径不是/opt/seafile/conf,所有的seafile的文件都是在/vol1/1000/docker/下面,是不是这个导致的呢?打开/vol1/1000/docker/conf/gunicorn.conf.py的里面配置的如下:
import os
daemon = False
workers = 5
default localhost:8000
bind = “127.0.0.1:8000”
Pid
pids_dir = ‘/opt/seafile/pids’
pidfile = os.path.join(pids_dir, ‘seahub.pid’)
for file upload, we need a longer timeout value (default is only 30s, too short)
timeout = 1200
limit_request_line = 8190
是不是这个配置路径有问题??
大概率是Mysql容器没有完全启动提供服务,Seafile容器连接不上数据库服务导致的。
docker部署的话,docker exec -it seafile bash
进入容器,gunicorn.conf.py在容器内的路径是/opt/seafile/conf
sp670
6
我也是这个情况,其实是数据库未就绪,seahub就启动完成了所以产生这个错误。
我也尝试在数据库里加healthcheck参数来延迟seahub的启动,但还是有点问题,每次都是等seahub报错之后,稍等1分钟再重启一次seahub就行,给我整的郁闷。
jokin
7
我也是这个问题,应该就是启动顺序的问题。开完机手动去重启容器就正常了。