File tree 6 files changed +105
-35
lines changed 6 files changed +105
-35
lines changed Original file line number Diff line number Diff line change
1
+ MYSQL1_SAVE_PATH = mysql1
2
+ MYSQL2_SAVE_PATH = mysql2
3
+ ROOT_PASSWORD = 123456
4
+ DATABASE = kingshard
Original file line number Diff line number Diff line change
1
+ mysql1 /
2
+ mysql2 /
Original file line number Diff line number Diff line change 1
1
# Docker-mysql-cluster
2
2
use docker and kingshard build mysql cluster
3
3
4
- ### What is ` kingshard `
5
- > https://github.com/flike/kingshard
6
-
7
4
### How to use
8
- 1 . Run ` docker pull strucoder/kingshard `
9
- 2 . Edit ` docker-compose.yaml ` and ` ks1.yaml ` files to your need
10
- 3 . Run ` docker-compose up `
5
+ * sh start.sh
6
+
7
+
8
+ ### print
9
+
10
+ ```
11
+ sh start.sh
12
+
13
+ Creating dockermysqlcluster_mysql1_1 ...
14
+ Creating dockermysqlcluster_mysql1_1 ... done
15
+ wait-for-it.sh: waiting 15 seconds for 172.17.0.13:3306
16
+ wait-for-it.sh: 172.17.0.13:3306 is available after 10 seconds
17
+ mysql1 is start success
18
+ Creating dockermysqlcluster_mysql2_1 ...
19
+ Creating dockermysqlcluster_mysql2_1 ... done
20
+ wait-for-it.sh: waiting 15 seconds for 172.17.0.14:3306
21
+ wait-for-it.sh: 172.17.0.14:3306 is available after 11 seconds
22
+ mysql2 is start success
23
+ start kingshard
24
+ dockermysqlcluster_mysql1_1 is up-to-date
25
+ dockermysqlcluster_mysql2_1 is up-to-date
26
+ Creating dockermysqlcluster_kingshard_1 ...
27
+ Creating dockermysqlcluster_kingshard_1 ... done
28
+
29
+
30
+ docker-compose ps
31
+
32
+ Name Command State Ports
33
+ ---------------------------------------------------------------------------------------------
34
+ dockermysqlcluster_kingshard_1 /kingshard Up 0.0.0.0:9696->9696/tcp
35
+ dockermysqlcluster_mysql1_1 docker-entrypoint.sh mysqld Up 3306/tcp
36
+ dockermysqlcluster_mysql2_1 docker-entrypoint.sh mysqld Up 3306/tcp
37
+ ```
Original file line number Diff line number Diff line change
1
+ docker network create -d bridge testwifi
2
+ docker network ls
3
+ docker inspect testwifi
4
+ # http://blog.csdn.net/sisiy2015/article/details/50401973
Original file line number Diff line number Diff line change 1
- mysql1 :
2
- image : mysql:latest
3
- expose :
4
- - " 3306"
5
- environment :
6
- - MYSQL_ROOT_PASSWORD=123456
7
- - MYSQL_DATABASE=kingshard
8
-
9
- mysql2 :
10
- image : mysql:latest
11
- expose :
12
- - " 3306"
13
- environment :
14
- - MYSQL_ROOT_PASSWORD=123456
15
- - MYSQL_DATABASE=kingshard
16
-
17
- kingshard :
18
- image : kingshard
19
- volumes :
20
- - .:/go/src/github.com/flike/kingshard/etc
21
- ports :
22
- - " 9696:9696"
23
- expose :
24
- - " 9696"
25
- links :
26
- - mysql1
27
- - mysql2
28
- entrypoint : ./etc/wait-for-it.sh mysql2:3306 -- kingshard " -config=./etc/ks1.yaml"
29
-
1
+ version : ' 2'
2
+ networks :
3
+ default :
4
+ external :
5
+ name : testwifi
6
+ services :
7
+ mysql1 :
8
+ container_name : " mysql1"
9
+ image : mysql:latest
10
+ volumes :
11
+ - ./${MYSQL1_SAVE_PATH}:/var/lib/mysql
12
+ expose :
13
+ - " 3306"
14
+ environment :
15
+ - MYSQL_ROOT_PASSWORD=${ROOT_PASSWORD}
16
+ - MYSQL_DATABASE=${DATABASE}
17
+ restart : always
18
+
19
+ mysql2 :
20
+ container_name : " mysql2"
21
+ image : mysql:latest
22
+ volumes :
23
+ - ./${MYSQL2_SAVE_PATH}:/var/lib/mysql
24
+ expose :
25
+ - " 3306"
26
+ environment :
27
+ - MYSQL_ROOT_PASSWORD=${ROOT_PASSWORD}
28
+ - MYSQL_DATABASE=${DATABASE}
29
+ restart : always
30
+
31
+ kingshard :
32
+ container_name : " kingshard"
33
+ image : mysql:latest
34
+ image : matjazmav/kingshard
35
+ volumes :
36
+ - ./ks1.yaml:/etc/ks.yaml
37
+ ports :
38
+ - " 9696:9696"
39
+ expose :
40
+ - " 9696"
41
+ links :
42
+ - mysql1
43
+ - mysql2
44
+ restart : always
Original file line number Diff line number Diff line change
1
+ tmpnetworkname=" testwifi"
2
+ tmpcontainername=" mysql1"
3
+ docker-compose up -d $tmpcontainername
4
+ tmpcontainerName=$( docker-compose ps | grep $tmpcontainername | awk ' {print $1}' )
5
+ tmpnetworkIp=$( docker inspect --format ' {{ .NetworkSettings.Networks.' $tmpnetworkname ' .IPAddress }}' $tmpcontainerName )
6
+ ./wait-for-it.sh $tmpnetworkIp :3306 -- echo " $tmpcontainername is start success"
7
+
8
+ tmpcontainername=" mysql2"
9
+ docker-compose up -d $tmpcontainername
10
+ tmpcontainerName=$( docker-compose ps | grep $tmpcontainername | awk ' {print $1}' )
11
+ tmpnetworkIp=$( docker inspect --format ' {{ .NetworkSettings.Networks.' $tmpnetworkname ' .IPAddress }}' $tmpcontainerName )
12
+ ./wait-for-it.sh $tmpnetworkIp :3306 -- echo " $tmpcontainername is start success"
13
+
14
+
15
+
16
+ tmpcontainername=" kingshard"
17
+ echo " start kingshard"
18
+ docker-compose up -d $tmpcontainername
You can’t perform that action at this time.
0 commit comments