[DockerCompose] Add env vars to change the user the containers run as to fix permission errors

This commit is contained in:
Aaro Koivukangas
2026-09-07 13:31:12 +03:00
parent 70063b8ea1
commit 87f43463d2
2 changed files with 15 additions and 5 deletions
+5 -1
View File
@@ -3,4 +3,8 @@
# `node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"`
IMPORTER_DB_API_TOKEN=
PATE_TOKEN=
CRYPT_KEY=
CRYPT_KEY=
# Changes the user and group docker runs as. Use "id -u" and "id -g" to run containers as current user+group.
# Fixes errors with permissions when mounting.
DOCKER_UID=
DOCKER_GID=
+10 -4
View File
@@ -6,6 +6,12 @@ x-defaults: &defaults
x-build_defaults: &build_defaults
dockerfile: dev.Dockerfile
x-user_defaults: &user_defaults
# Run containers as user:group defined in .env
# If run as $(id -u):$(id -g) will reduce permission errors when mounting
# Defaults to registry.access.redhat.com/ubi10/nodejs-24-minimal's default user:group
user: '${DOCKER_UID:-1001}:${DOCKER_GID:-0}'
x-healthcheck-defaults: &healthcheck-defaults
interval: 30s # Normal healthcehck interval
timeout: 5s
@@ -26,7 +32,7 @@ services:
- ./adminer-plugins:/var/www/html/plugins-enabled
backend:
<<: *defaults
<<: [*defaults, *user_defaults]
container_name: oodikone-backend
build:
dockerfile: backend/dev.Dockerfile
@@ -67,7 +73,7 @@ services:
<<: *healthcheck-defaults
frontend:
<<: *defaults
<<: [*defaults, *user_defaults]
container_name: oodikone-frontend
build:
dockerfile: frontend/dev.Dockerfile
@@ -186,7 +192,7 @@ services:
<<: *healthcheck-defaults
sis-updater-worker:
<<: *defaults
<<: [*defaults, *user_defaults]
container_name: oodikone-updater-worker
build:
<<: *build_defaults
@@ -213,7 +219,7 @@ services:
- sis-updater-worker-nodemod:/opt/app-root/src/node_modules
sis-updater-scheduler:
<<: *defaults
<<: [*defaults, *user_defaults]
container_name: oodikone-updater-scheduler
build:
<<: *build_defaults