# Build and start the container
docker compose up -dDuring the first time install, your app/static/assets directory will be empty.
As you mount the project directory to the /app volume, the static assets from TNA Frontend installed inside the container will be "overwritten" by your empty directory.
To add back in the static assets, run:
docker compose exec app cp -r /app/node_modules/@nationalarchives/frontend/nationalarchives/assets /app/app/staticdocker compose exec dev poetry run python -m pytestdocker compose exec dev formatIn addition to the base Docker image variables, this application has support for:
| Variable | Purpose | Default |
|---|---|---|
CONFIG |
The configuration to use | config.Production |
DEBUG |
If true, allow debugging[^1] | False |
SENTRY_DSN |
The Sentry DSN (project code) | none |
SENTRY_SAMPLE_RATE |
How often to sample traces and profiles (0-1.0) | production: 0.1, staging: 1, develop: 0 |
COOKIE_DOMAIN |
The domain to save cookie preferences against | none |
CSP_IMG_SRC |
A comma separated list of CSP rules for img-src |
'self' |
CSP_SCRIPT_SRC |
A comma separated list of CSP rules for script-src |
'self' |
CSP_STYLE_SRC |
A comma separated list of CSP rules for style-src |
'self' |
CSP_FONT_SRC |
A comma separated list of CSP rules for font-src |
'self' |
CSP_CONNECT_SRC |
A comma separated list of CSP rules for connect-src |
'self' |
CSP_MEDIA_SRC |
A comma separated list of CSP rules for media-src |
'self' |
CSP_WORKER_SRC |
A comma separated list of CSP rules for worker-src |
'self' |
CSP_FRAME_SRC |
A comma separated list of CSP rules for frame-src |
'self' |
CSP_FRAME_ANCESTORS |
A comma separated list of CSP rules for frame-accestors |
'self' |
CSP_FEATURE_FULLSCREEN |
A comma separated list of rules for the fullscreen feature policy |
'self' |
CSP_FEATURE_PICTURE_IN_PICTURE |
A comma separated list of rules for the picture-in-picture feature policy |
'self' |
FORCE_HTTPS |
Redirect requests to HTTPS as part of the CSP | none |
CACHE_TYPE |
https://flask-caching.readthedocs.io/en/latest/#configuring-flask-caching | none |
CACHE_DEFAULT_TIMEOUT |
The number of seconds to cache pages for | production: 300, staging: 60, develop: 0, test: 0 |
CACHE_DIR |
Directory for storing cached responses when using FileSystemCache |
/tmp |
UPTIME_KUMA_URL |
The Uptime Kuma URL | none |
UPTIME_KUMA_JWT |
A JWT which allows access to the API | none |
UPTIME_KUMA_STATUS_PAGE_SLUG |
The slug of the Uptime Kuma status page | none |
STATUS_PAGE_CACHE_DURATION |
The number of seconds to cache the status page | 15 |
STATUS_PAGE_REFRESH_SECONDS |
If used, the number of second between automatic page refreshes | 60 |
DETAILED_SERVICE_REPORT_HOURS |
The number of hours to show in the service details page | 720 |
[^1] Debugging in Flask