52 lines
1.5 KiB
YAML
52 lines
1.5 KiB
YAML
version: "3.8"
|
|
|
|
services:
|
|
app:
|
|
environment:
|
|
- DB_HOST=db
|
|
- DB_USER=mrbs-user
|
|
- DB_PASS=replacewithdockersecret
|
|
- DB_DATABASE=mrbs
|
|
|
|
db:
|
|
image: "mariadb:11.8"
|
|
environment:
|
|
- MYSQL_DATABASE=mrbs
|
|
- MYSQL_USER=mrbs-user
|
|
#- MYSQL_PASSWORD_FILE=/run/secrets/db_password
|
|
- MYSQL_PASSWORD=replacewithdockersecret
|
|
- MYSQL_ROOT_PASSWORD_FILE=/run/secrets/db_root_password
|
|
- MAX_DB_CONNECTIONS=${MAX_DB_CONNECTIONS:-100}
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=${TIMEZONE:-"Europe/London"}
|
|
secrets:
|
|
- db_root_password
|
|
- db_password
|
|
volumes:
|
|
- "mariadb:/var/lib/mysql"
|
|
networks:
|
|
- internal
|
|
deploy:
|
|
labels:
|
|
backupbot.backup.pre-hook: 'mariadb-dump --single-transaction -u root -p"$$(cat /run/secrets/db_root_password)" mrbs > /var/lib/mysql/backup.sql'
|
|
backupbot.backup.volumes.mariadb.path: "backup.sql"
|
|
backupbot.restore.post-hook: 'mariadb -u root -p"$$(cat /run/secrets/db_root_password)" mrbs < /var/lib/mysql/backup.sql'
|
|
healthcheck:
|
|
test: ["CMD-SHELL", 'mariadb-admin -p"$$(cat /run/secrets/db_root_password)" ping']
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 10
|
|
start_period: 1m
|
|
|
|
secrets:
|
|
db_root_password:
|
|
external: true
|
|
name: ${STACK_NAME}_db_root_password_${SECRET_DB_ROOT_PASSWORD_VERSION}
|
|
db_password:
|
|
external: true
|
|
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
|
|
|
|
volumes:
|
|
mariadb:
|