seafile8.0.8 在容器中启动失败

当前服务器版本

容器部署 8.0.8

部署/操作过程(请说明二进制部署/docker部署;出现错误的操作步骤)

使用 docker compose 部署:

root@chenklServer1:~# cat docker-compose.yml
version: "3.7"

services:
  db:
    image: docker.1ms.run/mariadb:10.5
    container_name: seafile-mysql
    environment:
      - MYSQL_ROOT_PASSWORD=xxxx
      - MYSQL_LOG_CONSOLE=true
    volumes:
      - /home/mysql/mysqldata:/var/lib/mysql
    ports:
      - "3306:3306"
    networks:
      - all-net

  memcached:
    image: docker.1ms.run/memcached:1.5.6
    container_name: seafile-memcached
    entrypoint: memcached -m 256
    ports:
      - "11211:11211"
    networks:
      - all-net

  seafile:
    image: docker.1ms.run/seafileltd/seafile-mc:8.0.8
    container_name: seafile
    ports:
      - "10001:80"
    volumes:
      - /nfs/servers/seafiledata:/shared
    environment:
      - DB_HOST=db
      - DB_ROOT_PASSWD=xxxx # root的MySQL密码
      - TIME_ZONE=Asia/Shanghai # 设置时区,默认为UTC
      - SEAFILE_ADMIN_EMAIL=xxxx@gmail.com # Seafile管理员用户
      - SEAFILE_ADMIN_PASSWORD=xxxxx# Seafile管理员密码
      - SEAFILE_SERVER_LETSENCRYPT=false   # 是否使用letsencrypt生成证书
      #- SEAFILE_SERVER_HOSTNAME=ddns.raining.top:10001 # 设置主机名
    depends_on:
      - db
      - memcached
    networks:
      - all-net
networks:
  all-net:
    driver: bridge

启动:

docker-compose up -d

容器成功启动,但是访问浏览器502,日志显示查看错误日志。

然后我进入容器中手动启动 seafile和seahub

root@chenklServer1:~# docker exec -it f2dd40f8b54f /bin/bash
root@f2dd40f8b54f:/opt/seafile# ls
ccnet  conf  logs  pids  pro-data  seafile-data  seafile-server-8.0.8  seafile-server-latest  seahub-data
root@f2dd40f8b54f:/opt/seafile# cd seafile-server-latest
root@f2dd40f8b54f:/opt/seafile/seafile-server-latest# ls
check_init_admin.py  reset-admin.sh  runtime  seaf-fsck.sh  seaf-fuse.sh  seaf-gc.sh  seafile  seafile.sh  seahub  seahub.sh  setup-seafile-mysql.py  setup-seafile-mysql.sh  setup-seafile.sh  sql  upgrade
root@f2dd40f8b54f:/opt/seafile/seafile-server-latest# ./sefile.sh start
bash: ./sefile.sh: No such file or directory
root@f2dd40f8b54f:/opt/seafile/seafile-server-latest# ./seafile.sh start

Starting seafile server, please wait ...
Seafile server started

Done.
root@f2dd40f8b54f:/opt/seafile/seafile-server-latest# ./seahub.sh start

Starting seahub at port 8000 ...

Seahub is started

Done.

现在就能正常使用了

重点:以前升级过11,我没有注意到升级的复杂性直接用11版本的镜像启动过一次,后来改回来用8.0.8的镜像就有这个问题了。

我该如何修复这个问题呢,谢谢。

错误截图

错误日志

容器启动错误日志如下:

shell
root@chenklServer1:~# docker logs f2dd40f8b54f
*** Running /etc/my_init.d/01_create_data_links.sh...
*** Booting runit daemon...
*** Runit started as PID 27
*** Running /scripts/enterpoint.sh...
2026-09-15 22:08:37 Nginx ready
2026-09-15 22:08:37 This is a idle script (infinite loop) to keep container running.
nginx: [warn] conflicting server name "" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "" on 0.0.0.0:80, ignored

------------------------------
Fix seafevents conf success
------------------------------

[09/15/2026 22:08:39][upgrade]: Running script /opt/seafile/seafile-server-8.0.8/upgrade/upgrade_2.0_2.1.sh

-------------------------------------------------------------
This script would upgrade your seafile server from 2.0 to 2.1
Press [ENTER] to contiune
-------------------------------------------------------------


Can't find a python executable of version 2.6 or above in PATH
Install python 2.6+ before continue.
Or if you installed it in a non-standard PATH, set the PYTHON enviroment varirable to it

[2026-09-15 22:08:38] Skip running setup-seafile-mysql.py because there is existing seafile-data folder.
[2026-09-15 22:08:39] Running scripts /opt/seafile/seafile-server-8.0.8/upgrade/upgrade_2.0_2.1.sh
Traceback (most recent call last):
  File "/scripts/start.py", line 86, in <module>
    main()
  File "/scripts/start.py", line 58, in main
    check_upgrade()
  File "/scripts/upgrade.py", line 182, in check_upgrade
    run_script_and_update_version_stamp(script, new_version)
  File "/scripts/upgrade.py", line 61, in run_script_and_update_version_stamp
    call(script)
  File "/scripts/utils.py", line 70, in call
    return subprocess.check_call(*a, **kw)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '/opt/seafile/seafile-server-8.0.8/upgrade/upgrade_2.0_2.1.sh' returned non-zero exit status 1.
*** Running /etc/my_init.d/01_create_data_links.sh...
*** Booting runit daemon...
*** Runit started as PID 28
*** Running /scripts/enterpoint.sh...
2026-09-24 14:00:29 Nginx ready
2026-09-24 14:00:30 This is a idle script (infinite loop) to keep container running.
nginx: [warn] conflicting server name "" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "" on 0.0.0.0:80, ignored

------------------------------
Fix seafevents conf success
------------------------------

[09/24/2026 14:00:36][upgrade]: Running script /opt/seafile/seafile-server-8.0.8/upgrade/upgrade_2.0_2.1.sh

-------------------------------------------------------------
This script would upgrade your seafile server from 2.0 to 2.1
Press [ENTER] to contiune
-------------------------------------------------------------


Can't find a python executable of version 2.6 or above in PATH
Install python 2.6+ before continue.
Or if you installed it in a non-standard PATH, set the PYTHON enviroment varirable to it

[2026-09-24 14:00:36] Skip running setup-seafile-mysql.py because there is existing seafile-data folder.
[2026-09-24 14:00:36] Running scripts /opt/seafile/seafile-server-8.0.8/upgrade/upgrade_2.0_2.1.sh
Traceback (most recent call last):
  File "/scripts/start.py", line 86, in <module>
    main()
  File "/scripts/start.py", line 58, in main
    check_upgrade()
  File "/scripts/upgrade.py", line 182, in check_upgrade
    run_script_and_update_version_stamp(script, new_version)
  File "/scripts/upgrade.py", line 61, in run_script_and_update_version_stamp
    call(script)
  File "/scripts/utils.py", line 70, in call
    return subprocess.check_call(*a, **kw)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '/opt/seafile/seafile-server-8.0.8/upgrade/upgrade_2.0_2.1.sh' returned non-zero exit status 1.

进入容器中执行 python -V

root@chenklServer1:~# docker exec -it f2dd40f8b54f /bin/bash
root@f2dd40f8b54f:/opt/seafile# ls
ccnet  conf  logs  pids  pro-data  seafile-data  seafile-server-8.0.8  seafile-server-latest  seahub-data
root@f2dd40f8b54f:/opt/seafile# python -V
Python 3.8.10

浏览器控制台错误信息(如果相关,请提供截图信息)

浏览器访问 502

您好,8.0版本早已经停止支持,请您升级到最新版,升级建议您逐个版本升级,而不是跨版本升级,不建议您手动回滚版本,除非您有旧版的完整数据备份;升级请参考文档:

https://cloud.seafile.com/wiki/publish/seafile-manual/hqBU/