@@ -14,26 +14,31 @@ services:
14
14
- mysql-router-http
15
15
- mysql-router-https
16
16
17
+ # why using `latest` tag?
18
+ # Oracle does not pin the version of mysql-server of linux/amd64 ^^
17
19
mysql-server-1 :
18
- env_file :
19
- - mysql-server.env
20
- image : mysql/mysql-server:${VERSION}
20
+ environment :
21
+ MYSQL_ROOT_PASSWORD : " mysql"
22
+ MYSQL_ROOT_HOST : " %"
23
+ image : container-registry.oracle.com/mysql/community-server:latest
21
24
command : [ "mysqld","--server_id=1", "--binlog-transaction-dependency-tracking=WRITESET", "--binlog_checksum=NONE","--gtid_mode=ON","--enforce_gtid_consistency=ON","--log_bin","--log_slave_updates=ON","--master_info_repository=TABLE","--relay_log_info_repository=TABLE","--transaction_write_set_extraction=XXHASH64","--user=mysql","--skip-host-cache","--skip-name-resolve", "--default_authentication_plugin=mysql_native_password" ]
22
25
ports :
23
26
- " 3301:3306"
24
27
25
28
mysql-server-2 :
26
- env_file :
27
- - mysql-server.env
28
- image : mysql/mysql-server:${VERSION}
29
+ environment :
30
+ MYSQL_ROOT_PASSWORD : " mysql"
31
+ MYSQL_ROOT_HOST : " %"
32
+ image : container-registry.oracle.com/mysql/community-server:latest
29
33
command : [ "mysqld","--server_id=2","--binlog-transaction-dependency-tracking=WRITESET", "--binlog_checksum=NONE","--gtid_mode=ON","--enforce_gtid_consistency=ON","--log_bin","--log_slave_updates=ON","--master_info_repository=TABLE","--relay_log_info_repository=TABLE","--transaction_write_set_extraction=XXHASH64","--user=mysql","--skip-host-cache","--skip-name-resolve", "--default_authentication_plugin=mysql_native_password" ]
30
34
ports :
31
35
- " 3302:3306"
32
36
33
37
mysql-server-3 :
34
- env_file :
35
- - mysql-server.env
36
- image : mysql/mysql-server:${VERSION}
38
+ environment :
39
+ MYSQL_ROOT_PASSWORD : " mysql"
40
+ MYSQL_ROOT_HOST : " %"
41
+ image : container-registry.oracle.com/mysql/community-server:latest
37
42
command : [ "mysqld","--server_id=3","--binlog-transaction-dependency-tracking=WRITESET", "--binlog_checksum=NONE","--gtid_mode=ON","--enforce_gtid_consistency=ON","--log_bin","--log_slave_updates=ON","--master_info_repository=TABLE","--relay_log_info_repository=TABLE","--transaction_write_set_extraction=XXHASH64","--user=mysql","--skip-host-cache","--skip-name-resolve", "--default_authentication_plugin=mysql_native_password" ]
38
43
ports :
39
44
- " 3303:3306"
@@ -42,26 +47,38 @@ services:
42
47
platform : linux/amd64
43
48
build :
44
49
context : ./mysql-shell
50
+ args :
51
+ MYSQL_SHELL_PACKAGER_URL : " https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-8.1.0-1.el7.x86_64.rpm"
45
52
dockerfile : Dockerfile
46
- env_file :
47
- - mysql-shell.env
53
+ environment :
54
+ MYSQL_USER : " root"
55
+ MYSQL_HOST : " mysql-server-1"
56
+ MYSQL_PORT : " 3306"
57
+ MYSQL_PASSWORD : " mysql"
58
+ MYSQLSH_SCRIPT : " /setupCluster.js"
48
59
image : mysqlshell:${VERSION}
49
60
depends_on :
50
61
- mysql-server-1
51
62
- mysql-server-2
52
63
- mysql-server-3
53
64
54
- #
55
- # DO NOT CHANGE APP NAME
56
- # WE WILL HAVE TO CHANGE CERTIFICATES.
57
- #
65
+ #
66
+ # DO NOT CHANGE APP NAME
67
+ # WE WILL HAVE TO CHANGE CERTIFICATES.
68
+ #
58
69
mysql-router-http :
59
70
platform : linux/amd64
60
71
build :
61
72
context : ./mysql-router
73
+ args :
74
+ MYSQL_YUM_REPO_URL : https://dev.mysql.com/get/mysql80-community-release-el7-8.noarch.rpm
62
75
dockerfile : Dockerfile_http
63
- env_file :
64
- - mysql-router.env
76
+ environment :
77
+ MYSQL_USER : " root"
78
+ MYSQL_HOST : " mysql-server-1"
79
+ MYSQL_PORT : " 3306"
80
+ MYSQL_PASSWORD : mysql
81
+ MYSQL_INNODB_NUM_MEMBERS : 3
65
82
image : mysqlrouter-http:${VERSION}
66
83
ports :
67
84
- " 8080:8080"
@@ -71,17 +88,23 @@ services:
71
88
- mysql-server-3
72
89
restart : on-failure
73
90
74
- #
75
- # DO NOT CHANGE APP NAME
76
- # WE WILL HAVE TO CHANGE CERTIFICATES.
77
- #
91
+ #
92
+ # DO NOT CHANGE APP NAME
93
+ # WE WILL HAVE TO CHANGE CERTIFICATES.
94
+ #
78
95
mysql-router-https :
79
96
platform : linux/amd64
80
97
build :
81
98
context : ./mysql-router
99
+ args :
100
+ MYSQL_YUM_REPO_URL : https://dev.mysql.com/get/mysql80-community-release-el7-8.noarch.rpm
82
101
dockerfile : Dockerfile_https
83
- env_file :
84
- - mysql-router.env
102
+ environment :
103
+ MYSQL_USER : " root"
104
+ MYSQL_HOST : " mysql-server-1"
105
+ MYSQL_PORT : " 3306"
106
+ MYSQL_PASSWORD : mysql
107
+ MYSQL_INNODB_NUM_MEMBERS : 3
85
108
image : mysqlrouter-https:${VERSION}
86
109
ports :
87
110
- " 8443:8443"
0 commit comments