Skip to content

Troubleshooting

Common Issues

502 Bad Gateway

Check:

docker compose ps
docker compose logs ses-server-1 --tail 50

Fix: Restart containers:

sudo -u ses sh -c 'cd /opt/ses && docker compose restart ses-server-1'

Database Connection Errors

Check:

docker compose logs postgres --tail 50
docker compose logs odyssey --tail 50

Fix: Verify DB_PASSWORD matches in .env.secrets. If changed, recreate the database volume.

Certificate Warnings

Fix: Import the mkcert CA certificate into your browser's trust store:

certutil -addstore -user Root $(mkcert -CAROOT)/rootCA.pem

Code Changes Not Applied

Fix: Restart the server containers:

sudo -u ses sh -c 'cd /opt/ses && docker compose restart ses-server-1'

For structural changes (new files, dependencies), rebuild:

sudo -u ses sh -c 'cd /opt/ses && docker compose --env-file .env.secrets --env-file .env.local up -d --build'

Keycloak Roles Missing

Fix:

docker exec -w /app/src local-ses-server-1 python manage.py verify_keycloak_roles --fix

WSL Port Not Accessible from Windows

Fix: Enable Hyper-V inbound firewall:

Set-NetFirewallHyperVVMSetting -DefaultInboundAction Allow

Proxy Config Not Updating

Fix: Regenerate and reload:

docker exec -w /app/src local-ses-server-1 python manage.py regenerate_ems_configs --reload

Tenant URL Returns 404

Fix: Ensure the tenant exists:

python manage.py list_tenants

If the tenant exists but the URL returns 404, check the Domain records:

python manage.py list_tenants  # shows domain/folder mapping

Tenant Required Error (Bare /admin/)

Accessing /admin/ without a tenant prefix returns a "Tenant Required" error. Use the full path:

https://<domain>/<institute>/admin/