mapletree/lxc1/p0-infrastructure/mgdb.yml
2026-02-03 08:24:56 -07:00

39 lines
No EOL
1.3 KiB
YAML

services:
mariadb:
image: mariadb:11.4
container_name: mariadb-node${MGDB_NODE_NUMBER}
restart: always
network_mode: host
environment:
- MARIADB_ROOT_PASSWORD=${DB_ROOT_PASSWORD}
- MARIADB_USER=${DB_ADMIN_USER}
- MARIADB_PASSWORD=${DB_ADMIN_PASSWORD}
- MARIADB_DATABASE=initial_db
# Pass these through for the init script
- APP_REGISTRY=${APP_REGISTRY}
- REPL_USER=${REPL_USER}
- REPL_PASSWORD=${REPL_PASSWORD}
# Dynamic password variables for your apps
- FORGEJO_DB_PASS=${FORGEJO_DB_PASS}
- GUACAMOLE_DB_PASS=${GUACAMOLE_DB_PASS}
- GRAFANA_DB_PASS=${GRAFANA_DB_PASS}
volumes:
- /docker/maria/data:/var/lib/mysql
- /docker/maria/conf:/etc/mysql/conf.d
- /docker/maria/init:/docker-entrypoint-initdb.d
command:
- mariadbd
# NETWORK BINDING
- --bind-address=0.0.0.0
# ASYNC REPLICATION CONFIG
- --log-bin=mysql-bin
- --binlog-format=ROW
- --server-id=${MGDB_NODE_NUMBER}
- --log-slave-updates=ON
- --gtid-strict-mode=ON
# COLLISION PREVENTION (Odds vs Evens)
- --auto-increment-increment=2
- --auto-increment-offset=${MGDB_NODE_NUMBER}
# PERFORMANCE
- --innodb-buffer-pool-size=1G # Adjust based on your RAM
- --innodb-flush-log-at-trx-commit=2 # 1=Safest, 2=Faster