39 lines
No EOL
1.3 KiB
YAML
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 |