Runtime
Python 3.12
Framework
Django + Gunicorn
Database
MariaDB 11.4
Process
systemd
Start Building (Quickstart)
- SSH:
ssh root@172.233.82.41 - Upload code via SFTP / FileZilla / Cyberduck: host=
172.233.82.41, user=root, target=/opt/myapp_mariadb/ - Ownership:
chown -R appuser:appuser /opt/myapp_mariadb - Install:
sudo -iu appuser→cd /opt/myapp_mariadb→uv sync→uv run python manage.py migrate→uv run python manage.py collectstatic --noinput - Restart:
exit→systemctl restart myapp_mariadb
Operate (root)
Service status
systemctl status myapp_mariadbApp logs
journalctl -u myapp_mariadb -fAdmin URL
https://mxbhkimtest0427djangomariadb.mycafe24.com/admin/DB env
sudo cat /etc/myapp_mariadb/envReference (paths & configs)
Runtime
Python 3.12 (system) with uv (Astral) for project envs.Build tool
uv sync / uv add by default. pip + venv also works: python -m venv .venv then source .venv/bin/activate.Django project
/opt/myapp_mariadb/myapp_mariadb/ (settings.py, urls.py, wsgi.py). manage.py at /opt/myapp_mariadb/manage.py.Settings
/opt/myapp_mariadb/myapp_mariadb/settings.pyService file
/etc/systemd/system/myapp_mariadb.service (User=appuser, WorkingDirectory=/opt/myapp_mariadb)ExecStart
uv run --directory /opt/myapp_mariadb gunicorn -c /opt/myapp_mariadb/gunicorn.conf.py myapp_mariadb.wsgi:applicationGunicorn config
/opt/myapp_mariadb/gunicorn.conf.py (workers=2, threads=2, bind 127.0.0.1:8000)DB env file
/etc/myapp_mariadb/env — loaded by systemd via EnvironmentFile=; read in settings.py via os.environ (DATABASE_URL).Static files
collectstatic writes to STATIC_ROOT in settings.py. Nginx serves /static/ directly when configured.App port
8000 (Gunicorn bind). Nginx reverse-proxies :80 / :443 → :8000.Logs
journalctl -u myapp_mariadb -f (Gunicorn stdout). Access/error logs also under /var/log/myapp_mariadb/ per gunicorn.conf.py.Redeployupload new source →
sudo -iu appuser → cd /opt/myapp_mariadb → uv sync → uv run python manage.py migrate → uv run python manage.py collectstatic --noinput → exit → systemctl restart myapp_mariadb