Project Docker Reference

This page documents the Docker configuration used by this design system site itself.

Dockerfile

The design system site uses a two-stage build:

  1. Builder stage — Installs Python dependencies into a clean prefix
  2. Runtime stage — Copies only the installed packages and application code

Key features: - Based on python:3.11-slim - Non-root user (appuser) - Health check endpoint at /health - Runs via gunicorn WSGI server on port 5000

docker-compose.yml

The compose file provides:

  • Port mapping: 5000:5000
  • Volume mount: ./content:/app/content for hot-reloading content changes
  • Environment variables: GitLab integration settings
  • Health check: Verifies the /health endpoint

Running Locally

# Build and start
docker compose up --build

# Run in background
docker compose up -d

# View logs
docker compose logs -f

# Stop
docker compose down

Environment Variables

Variable Description Default
GITLAB_URL GitLab instance URL (empty)
GITLAB_TOKEN GitLab API access token (empty)
GITLAB_PROJECT_ID GitLab project ID for changelog (empty)