Post-start¶
This section describes what happens after you run docker compose up -d and how to verify that the environment is running correctly.
After docker compose up -d¶
Once all services are started:
- Traefik listens on ports 80 and 443 and routes requests to the appropriate service based on host and labels.
- MariaDB (
core--mariadb--db, aliasscs--database) is already running fromstart.sh; other services (Keycloak, SCS Manager, Nextcloud, JupyterHub, OpenGDB, project website) connect to it as configured. - Keycloak imports the realm from the file generated by pre-install and becomes the identity provider for SCS Manager, Nextcloud, and JupyterHub.
- Application services (SCS Manager, Nextcloud, JupyterHub, etc.) start and may run their own health checks or initialization.
Verifying services¶
-
List running containers:
Ensuredocker compose psCOMPOSE_FILEis set (e.g. from.env). -
Check logs for a specific service:
Examples:docker compose logs -f <service-name>core--mariadb--db,core--traefik--edge,keycloak--keycloak--app,manager--drupal--app, etc. -
Ensure the database is reachable (already verified by
start.sh; re-check if needed):docker compose exec core--mariadb--db mariadb -u root -p"${SCS_DB_ROOT_PASSWORD}" -e "SHOW DATABASES;" -
Access Keycloak at
https://<KC_DOMAIN>(e.g.https://auth.scs.localhost) and log in withKC_BOOTSTRAP_ADMIN_USERNAMEandKC_BOOTSTRAP_ADMIN_PASSWORDfrom.env. -
Access other services at their configured domains (e.g. SCS Manager, Nextcloud, JupyterHub) to confirm they respond. Some will require post-configuration before they work fully (e.g. OpenID client config, Social Login, group scopes).
Next steps¶
After confirming that services are up and reachable, follow the Post-configuration checklist to configure Keycloak clients and scopes, SCS Manager settings, Nextcloud Social Login, JupyterHub groups/gids, and other one-time or periodic configuration.