Skip to main content

Production Deployment

With Docker Compose

See docker-compose.production.yml.

Configuring

You also have to create a .env.production configuration file. First, grab the recommended defaults:

cp .env.production.sample .env.production

Next, read the file and change each configuration option as required.

Running

# Start the database and wait for it to initalise
docker compose -f docker-compose.production.yml up -d database elasticsearch
sleep 30
# Start the remaining components
docker compose -f docker-compose.production.yml up -d

Migration

Usually, migrations should apply on up, but if something fails you can run:

docker compose -f docker-compose.production.yml run --rm prisma_migrate

External Systems

<iframe> support

The following external services need to be configured to allow embedding in an <iframe> in ACUBETotal:

  • CAPEv2
  • Intezer

Due to Content Security Policy, a site can only be embedded in an <iframe> if it has been configured to allow it. CAPEv2 and Intezer must either be configured to serve a correct Content-Security-Policy header, or put behind a reverse proxy that does so. See MDN and our development proxy for details.