[SOLVED] Seahub won't start on new install

I have a new install that won;t start.
I have an existing install on a pi seafile-server_7.1.4_pi-buster-stable.tar.gz. all is OK
I also have a new odroid XU4 NAS which runs debian 12.5
I installed from seafile-server-9.0.9-bullseye-arm64v8l.tar.gz which is the latest arm I could find.
running seahub.sh start produced:

LC_ALL is not set in ENV, set to en_US.UTF-8
Starting seahub at port 8000 ...
Error:Seahub failed to start.
Please try to run "./seahub.sh start" again

After changing gunicorn.conf.py to daemon = False I can see the errors pasted below.

Any suggestions?

TIA
Glenn

LC_ALL is not set in ENV, set to en_US.UTF-8
Starting seahub at port 8000 ...
Traceback (most recent call last):
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/seahub/avatar/models.py", line 23, in <module>
    from PIL import Image
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/PIL/Image.py", line 100, in <module>
    from . import _imaging as core
ImportError: cannot import name '_imaging' from 'PIL' (/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/PIL/__init__.py)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/bin/gunicorn", line 8, in <module>
    sys.exit(run())
             ^^^^^
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/app/wsgiapp.py", line 67, in run
    WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/app/base.py", line 231, in run
    super().run()
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/app/base.py", line 72, in run
    Arbiter(self).run()
    ^^^^^^^^^^^^^
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/arbiter.py", line 58, in __init__
    self.setup(app)
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/arbiter.py", line 118, in setup
    self.app.wsgi()
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
                    ^^^^^^^^^^^
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/app/wsgiapp.py", line 58, in load
    return self.load_wsgiapp()
           ^^^^^^^^^^^^^^^^^^^
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
    return util.import_app(self.app_uri)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/gunicorn/util.py", line 359, in import_app
    mod = importlib.import_module(module)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/seahub/wsgi.py", line 25, in <module>
    application = get_wsgi_application()
                  ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/django/core/wsgi.py", line 12, in get_wsgi_application
    django.setup(set_prefix=False)
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/django/apps/registry.py", line 114, in populate
    app_config.import_models()
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/thirdpart/django/apps/config.py", line 301, in import_models
    self.models_module = import_module(models_module_name)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/home/seafile/ruby/seafile-server-9.0.9/seahub/seahub/avatar/models.py", line 26, in <module>
    import Image
ModuleNotFoundError: No module named 'Image'
Error:Seahub failed to start.
Please try to run "./seahub.sh start" again

Hi,

This reminds me of older errors I’ve seen.
Try this:

(Specifically, try to install pillow in the thirdpart folder of your seafile install as the error clearly says the module Image cannot be loaded, and it is looking for it there as the ImportError says)

Good luck!

Thanks for the input!

I did get seafile-server-9.0.9-bullseye-arm64v8l running on the Odroid running Debian 12.5

  • I removed seafile-server-latest/seahub/thirdpart/PIL dir
  • I followed the instructions to create a python virtual environment from this post Seafile-Server 11.0.3 on Debian 12 (Bookworm): Seahub can not be started - #5 by Bernie_O but don’t follow the pip3 install line.
  • now with the python virtual environment activated run pip3 install lxml pillow==9.5.0
  • Follow the instructions from the above post to make sure seahub was starting in the python virtual environment. I didn’t have to start seafile in the python virtual environment .
    Pillow has to be below version 10 to work with seafile 9.09