Prerequisites:
- Host server with docker
- Registered domain
Steps:
-
Copy
docker-compose-prod.yml
to the/home/<your-user>/
directory on the host server and rename the filedocker-compose.yml
-
Copy the entire
theme
folder to the/home/<your-user>/
directory on the host server -
Copy the entire
nginx
folder to the/home/<your-user>/
directory on the host server -
Edit the file
/home/<your-user>/nginx/default.conf
by replacing<your-domain>
(line 9) with your domain (without thehttps://
prefix) -
Generate SSL certificates for your domain with certbot
-
By default the generated certificates are stored under
/etc/letsencrypt/live/<your-domain>
. Copy the filesfullchain.pem
andprivkey.pem
from/etc/letsencrypt/live/<your-domain>
to/home/<your-user>/nginx/
-
On the host server, set values for the following env variables:
POSTGRES_DB
POSTGRES_USER
POSTGRES_PASSWORD
KEYCLOAK_ADMIN
KEYCLOAK_ADMIN_PASSWORD
APP_URL
(i.e. your domain with thehttps://
prefix)
(Alternatively you can also modify
docker-compose.yml
on the host server directly by replacing all${...}
with the relevant values) -
On the host server
cd /home/<your-user>/
and runsudo docker-compose up -d
-
After 2-3 minutes ACCESS should be available on your domain
Note: To follow the official instructions for generating certificates with certbot, you will need to first install and start nginx directly on your host server. After certbot is done and your certificates are ready, you need to stop the local nginx running directly on your host server (sudo systemctl stop nginx
for recent Ubuntu). Verify that the local nginx has terminated before running sudo docker-compose up -d
(since the frontend image of ACCESS contains nginx as well, it will fail to start if the local nginx is already using the ports).