-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathdocker.sh
152 lines (124 loc) · 3.05 KB
/
docker.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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
alias dc='docker-compose'
alias serverdocker='ssh [email protected] -p 2222'
alias mysqldocker='mysql -h IP_ADDRESS -u root -proot'
dockerup(){
#connfiguración
dockerPath=/var/www/html/dockbox
currentPath=$(pwd)
#eliminar know host
#ssh-keygen -f "~/.ssh/known_hosts" -R [127.0.0.1]:2222
#parar servicios
echo "Revisión de servicios locales"
MySQL=$(checkServiceIsRunning mysql);
Apache=$(checkServiceIsRunning apache2);
Postgres=$(checkServiceIsRunning postgres);
if [ "$MySQL" -ne "1" ];
then
echo " -MySQL esta encendido. Apagado!!!";
sudo service mysql stop
else
echo " -MySql apagado.";
fi
#-----------------------
if [ "$Apache" -ne 1 ];
then
echo " -Apache2 esta encendido. Apagado!!!";
sudo service apache2 stop
else
echo " -Apache2 apagado.";
fi;
#-----------------------
if [ "$Postgres" -ne 1 ];
then
echo " -Postgres esta encendido. Apagado!!!";
sudo service postgresql stop
else
echo " -Postgres apagado.";
fi;
#ir a dockbox
cd $dockerPath
#levantar contenedores
if [ -z $1 ]; then
echo "> Levantando MySql, Postgres, PHP, Apache2, Servidor"
docker-compose up -d mysql apache2 postgres
else
echo "> Levantando $($1)"
docker-compose up -d $1
fi;
#volver al directorio
echo "Docker inicializado.."
cd $currentPath
}
dockerdown(){
#connfiguración
dockerPath=/var/www/html/dockbox
currentPath=$(pwd)
#ir a dockbox
cd $dockerPath
#parar contenedores
echo "> Deteniendo contenedores"
docker-compose down
#volver al directorio
echo "Docker detenido.."
cd $currentPath
}
dockerin(){
#connfiguración
dockerPath=/var/www/html/dockbox
currentPath=$(pwd)
contenedor=$1
#ir a dockbox
cd $dockerPath
#levantar contenedores
if [ -z $1 ]; then
echo "Debe introducir el nombre de un contenedor"
else
echo "> Levantando $($contenedor)"
docker-compose exec $($contenedor) bash
fi;
#volver al directorio
echo "Docker inicializado.."
cd $currentPath
}
checkServiceIsRunning(){
service=$1
resultado=1
if (( $(ps -ef | grep -v grep | grep $service | wc -l) > 0 ))
then
# 0 = true
resultado=0
else
# 1 = false
resultado=1
fi
echo $resultado
}
dockerrebuild(){
#connfiguración
dockerPath=/var/www/html/dockbox
currentPath=$(pwd)
#ir a dockbox
cd $dockerPath
#parar contenedores
echo "> Eliminando Contenedores"
docker rm -f $(docker ps -a -q)
echo "> Eliminando Imagenes"
docker rmi -f $(docker images -a -q)
echo "> Limpiando directorio data"
rm -f data/elasticsearch/.gitkeep
rm -f data/mariadb/.gitkeep
rm -f data/mongo/.gitkeep
rm -f data/mysql/.gitkeep
rm -f data/postgis/.gitkeep
rm -f data/postgres/.gitkeep
rm -f data/redis/.gitkeep
rm -f data/jenkins/.gitkeep
echo "> Limpiando directorio log"
sudo chown $(whoami) -R log/
rm -rf log/*
echo "> Reconstruyendo dockbox con última versión"
docker-compose build
#volver al directorio
echo "Dockbox reconstruido.."
cd $currentPath
}