WongSaang / chatgpt-ui

A ChatGPT web client that supports multiple users, multiple languages, and multiple database connections for persistent data storage. Provides Docker images and quick deployment scripts.
https://wongsaang.github.io/chatgpt-ui/
MIT License
1.53k stars 338 forks source link

Setting ACCOUNT_EMAIL_VERIFICATION=mandatory Prevents wsgi-server from starting #57

Open zimmra opened 1 year ago

zimmra commented 1 year ago

Container starts fine with optional or none set to the env variable ACCOUNT_EMAIL_VERIFICATION, but fails to start properly when it is set to mandatory

Excerpt of non-working env variable:

...
      - ACCOUNT_EMAIL_VERIFICATION=mandatory # Determines the e-mail verification method during signup – choose one of "none", "optional", or "mandatory". Default is "optional". If you don't need to verify the email, you can set it to "none".
      # If you want to use the email verification function, you need to configure the following parameters
...

Excerpt of working env variable:

...
      - ACCOUNT_EMAIL_VERIFICATION=optional # Determines the e-mail verification method during signup – choose one of "none", "optional", or "mandatory". Default is "optional". If you don't need to verify the email, you can set it to "none".
      # If you want to use the email verification function, you need to configure the following parameters
...

Excerpt from logs when set to mandatory:

...
[2023-03-22 19:30:37 +0000] [1] [INFO] Starting gunicorn 20.1.0
[2023-03-22 19:30:37 +0000] [1] [INFO] Listening at: http://0.0.0.0:8000 (1)
[2023-03-22 19:30:37 +0000] [1] [INFO] Using worker: sync
[2023-03-22 19:30:37 +0000] [8] [INFO] Booting worker with pid: 8
[2023-03-22 19:30:37 +0000] [8] [ERROR] Exception in worker process
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/gunicorn/arbiter.py", line 589, in spawn_worker
    worker.init_process()
  File "/usr/local/lib/python3.10/site-packages/gunicorn/workers/base.py", line 134, in init_process
    self.load_wsgi()
  File "/usr/local/lib/python3.10/site-packages/gunicorn/workers/base.py", line 146, in load_wsgi
    self.wsgi = self.app.wsgi()
  File "/usr/local/lib/python3.10/site-packages/gunicorn/app/base.py", line 67, in wsgi
    self.callable = self.load()
  File "/usr/local/lib/python3.10/site-packages/gunicorn/app/wsgiapp.py", line 58, in load
    return self.load_wsgiapp()
  File "/usr/local/lib/python3.10/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
    return util.import_app(self.app_uri)
  File "/usr/local/lib/python3.10/site-packages/gunicorn/util.py", line 359, in import_app
    mod = importlib.import_module(module)
  File "/usr/local/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/app/chatgpt_ui_server/wsgi.py", line 16, in <module>
    application = get_wsgi_application()
  File "/usr/local/lib/python3.10/site-packages/django/core/wsgi.py", line 12, in get_wsgi_application
    django.setup(set_prefix=False)
  File "/usr/local/lib/python3.10/site-packages/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/usr/local/lib/python3.10/site-packages/django/apps/registry.py", line 116, in populate
    app_config.import_models()
  File "/usr/local/lib/python3.10/site-packages/django/apps/config.py", line 269, in import_models
    self.models_module = import_module(models_module_name)
  File "/usr/local/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/local/lib/python3.10/site-packages/allauth/account/models.py", line 9, in <module>
    from . import app_settings, signals
  File "/usr/local/lib/python3.10/site-packages/allauth/account/app_settings.py", line 373, in <module>
    app_settings = AppSettings("ACCOUNT_")
  File "/usr/local/lib/python3.10/site-packages/allauth/account/app_settings.py", line 28, in __init__
    self.EMAIL_VERIFICATION != self.EmailVerificationMethod.MANDATORY
AssertionError
[2023-03-22 19:23:42 +0000] [10] [INFO] Worker exiting (pid: 10)
[2023-03-22 19:23:42 +0000] [1] [INFO] Shutting down: Master
[2023-03-22 19:23:42 +0000] [1] [INFO] Reason: Worker failed to boot.
WongSaang commented 1 year ago

Hello,

Thanks for the feedback, I will fix it as soon as possible.

talktojer commented 1 year ago

Does this mean we cannot verify right now?