docker swarm
This commit is contained in:
91
docker-swarm/mysql-repl-tool/docker-compose.yml
Normal file
91
docker-swarm/mysql-repl-tool/docker-compose.yml
Normal file
@ -0,0 +1,91 @@
|
||||
version: '3.8'
|
||||
networks:
|
||||
default:
|
||||
name: ${NAMESPACE}
|
||||
external: true
|
||||
services:
|
||||
mysql-master:
|
||||
image: docker.io/bitnami/mysql:8.0
|
||||
hostname: ${NAMESPACE}-tool-mysql-master
|
||||
ports:
|
||||
- '${NODE_PORT_MASTER}:3306'
|
||||
volumes:
|
||||
- 'mysql_repl_master_data:/bitnami/mysql/data'
|
||||
environment:
|
||||
- MYSQL_REPLICATION_MODE=master
|
||||
- MYSQL_REPLICATION_USER=repl_user
|
||||
- MYSQL_REPLICATION_PASSWORD=${MYSQL_REPLICATION_PASSWORD}
|
||||
# - MYSQL_DATABASE=my_database
|
||||
# ALLOW_EMPTY_PASSWORD is recommended only for development.
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- MYSQL_AUTHENTICATION_PLUGIN=mysql_native_password
|
||||
- MYSQL_ENABLE_SLOW_QUERY=0
|
||||
- MYSQL_LONG_QUERY_TIME=10
|
||||
configs:
|
||||
- source: custome_config_master
|
||||
target: /opt/bitnami/mysql/conf/my_custom.cnf
|
||||
healthcheck:
|
||||
test: ['CMD', '/opt/bitnami/scripts/mysql/healthcheck.sh']
|
||||
interval: 15s
|
||||
timeout: 5s
|
||||
retries: 6
|
||||
deploy:
|
||||
mode: replicated
|
||||
replicas: 1
|
||||
placement:
|
||||
constraints: [node.hostname == ZD-CRM2]
|
||||
mysql-slave:
|
||||
image: docker.io/bitnami/mysql:8.0
|
||||
hostname: ${NAMESPACE}-tool-mysql-slave
|
||||
ports:
|
||||
- '${NODE_PORT_SLAVE}:3306'
|
||||
volumes:
|
||||
- 'mysql_repl_slave_data:/bitnami/mysql/data'
|
||||
depends_on:
|
||||
- mysql-master
|
||||
environment:
|
||||
- MYSQL_REPLICATION_MODE=slave
|
||||
- MYSQL_REPLICATION_USER=repl_user
|
||||
- MYSQL_REPLICATION_PASSWORD=${MYSQL_REPLICATION_PASSWORD}
|
||||
# - MYSQL_DATABASE=my_database
|
||||
- MYSQL_MASTER_HOST=mysql-master
|
||||
- MYSQL_MASTER_PORT_NUMBER=3306
|
||||
- MYSQL_MASTER_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- MYSQL_AUTHENTICATION_PLUGIN=mysql_native_password
|
||||
- MYSQL_ENABLE_SLOW_QUERY=0
|
||||
- MYSQL_LONG_QUERY_TIME=10
|
||||
# ALLOW_EMPTY_PASSWORD is recommended only for development.
|
||||
# - ALLOW_EMPTY_PASSWORD=yes
|
||||
# In case of missing binary files on master, use `true` to reset those binary files. Creating a previous backup is recommended.
|
||||
- MYSQL_REPLICATION_SLAVE_DUMP=false
|
||||
healthcheck:
|
||||
test: ['CMD', '/opt/bitnami/scripts/mysql/healthcheck.sh']
|
||||
interval: 15s
|
||||
timeout: 5s
|
||||
retries: 6
|
||||
configs:
|
||||
- source: custome_config_slave
|
||||
target: /opt/bitnami/mysql/conf/my_custom.cnf
|
||||
deploy:
|
||||
mode: replicated
|
||||
replicas: 1
|
||||
placement:
|
||||
constraints: [node.hostname == ZD-CRM3]
|
||||
volumes:
|
||||
mysql_repl_master_data:
|
||||
driver: local
|
||||
mysql_repl_slave_data:
|
||||
driver: local
|
||||
|
||||
configs:
|
||||
custome_config_master:
|
||||
external: true
|
||||
name: ${CUSTOME_CONFIG_MASTER}
|
||||
custome_config_slave:
|
||||
external: true
|
||||
name: ${CUSTOME_CONFIG_SLAVE}
|
Reference in New Issue
Block a user