open5e-api
open5e-api copied to clipboard
How to build and self host?
Per title how to run and self host this?
I cloned the repo Set values in repo's .env I also put same values in
export SECRET_KEY=<blah>
export SERVER_NAME=<blah>
Then tried to run docker run 8920387e86e3
(its id)
but it crashes out that SECRET_KEY isn't set in .env
root@instance-20221204-1407:/srv/open5e-api# export SECRET_KEY=<blah>
root@instance-20221204-1407:/srv/open5e-api# export SERVER_NAME=<blah>
root@instance-20221204-1407:/srv/open5e-api# docker run 8920387e86e3
[2024-01-27 22:26:47 +0000] [1] [INFO] Starting gunicorn 21.2.0
[2024-01-27 22:26:47 +0000] [1] [INFO] Listening at: http://0.0.0.0:8888 (1)
[2024-01-27 22:26:47 +0000] [1] [INFO] Using worker: sync
[2024-01-27 22:26:47 +0000] [8] [INFO] Booting worker with pid: 8
[2024-01-27 22:26:47 +0000] [8] [ERROR] Exception in worker process
Traceback (most recent call last):
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/arbiter.py", line 609, in spawn_worker
worker.init_process()
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/workers/base.py", line 134, in init_process
self.load_wsgi()
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/workers/base.py", line 146, in load_wsgi
self.wsgi = self.app.wsgi()
^^^^^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/app/base.py", line 67, in wsgi
self.callable = self.load()
^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 58, in load
return self.load_wsgiapp()
^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
return util.import_app(self.app_uri)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/gunicorn/util.py", line 371, in import_app
mod = importlib.import_module(module)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, 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 "/opt/services/open5e-api/server/wsgi.py", line 19, in <module>
application = get_wsgi_application()
^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/django/core/wsgi.py", line 12, in get_wsgi_application
django.setup(set_prefix=False)
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/django/__init__.py", line 19, in setup
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/django/conf/__init__.py", line 82, in __getattr__
self._setup(name)
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/django/conf/__init__.py", line 69, in _setup
self._wrapped = Settings(settings_module)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/share/virtualenvs/open5e-api-GCOA7Kjv/lib/python3.11/site-packages/django/conf/__init__.py", line 170, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
File "<frozen importlib._bootstrap>", line 1147, 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 "/opt/services/open5e-api/server/settings.py", line 26, in <module>
assert "SECRET_KEY" in os.environ, "Set SECRET_KEY in your .env file!"
^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Set SECRET_KEY in your .env file!
[2024-01-27 22:26:47 +0000] [8] [INFO] Worker exiting (pid: 8)
[2024-01-27 22:26:47 +0000] [1] [ERROR] Worker (pid:8) exited with code 3
[2024-01-27 22:26:47 +0000] [1] [ERROR] Shutting down: Master
[2024-01-27 22:26:47 +0000] [1] [ERROR] Reason: Worker failed to boot.
Where should I be putting the .env file it's looking for? (I've tried sticking it into /root/.env but no go).
Contents of .env file
OPEN5E_DEBUG=True
SECRET_KEY=<blah>
SERVER_NAME=<blah>
CERTFILE=selfsigned.crt
KEYFILE=selfsigned.key