-
Notifications
You must be signed in to change notification settings - Fork 25
/
Copy pathcompose.sh
90 lines (70 loc) · 2 KB
/
compose.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/bin/sh
basedir="$(cd `dirname $0`; pwd)"
echo basedir:$basedir
cd ${basedir}
# docker-compose要管理的环境
compose(){
echo batch $1: activemq, fastdfs,redis-single, solr, zookeeper ...
cd activemq
docker-compose $1
cd ..
cd redis-single
docker-compose $1
cd ..
cd solr
docker-compose $1
cd ..
cd zookeeper
docker-compose $1
cd ..
cd fastdfs
docker-compose $1
cd ..
}
if [ "$1" = "" ]; then
echo ERROR: parameter init\|start\|stop\|rm missing.
elif [ "$1" = "init" ]; then
echo "Initializing env ..."
# 自定义bridge网络:mynet
MYNET=`docker network ls|grep mynet`
if [ -z "${MYNET}" ]; then
echo "docker network \"mynet\" does not exists. Creating ..."
docker network create -d bridge mynet
if [ $? = 0 ]; then
echo 'docker network "mynet" created.'
else
echo ERROR: Creating mynet error. Please check docker network by using \"docker network ls\".
fi
else
echo $MYNET
echo \"mynet\" already exists.
fi
# 准备数据文件夹
if [ ! -d "${HOME}/docker-data/fdfs" ] ; then
# fastdfs数据文件夹
echo "Creating fastdfs data dir ${HOME}/docker-data/fdfs ..."
mkdir -p ${HOME}/docker-data/fdfs
fi
if [ ! -d "${HOME}/docker-data/solr-home" ] ; then
# solr数据文件夹
echo "Copy solr-home to ${HOME}/docker-data/ ..."
cp -r solr/solr-home ${HOME}/docker-data/
fi
# 给sh文件添加执行权限
echo Add execute permission to *.sh
find . -name "*.sh" |xargs chmod u+x
echo Initialize env Done...
elif [ "$1" = "start" ]; then
# 更新fastfs的IP, 此处也可直接填写虚拟机IP
# IP=`ifconfig enp0s8 | grep inet | awk '{print $2}'| awk -F: '{print $2}'`
#sed -i "s|IP=.*$|IP=${IP}|g" fastdfs/docker-compose.yaml
echo BATCH START ...
compose "up -d"
elif [ "$1" = "stop" ]; then
echo BATCH STOP ...
compose "stop"
elif [ "$1" = "rm" -o "$1" = "del" -o "$1" = "delete" ]; then
echo BATCH RM ...
compose "rm"
fi
exit 0