-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.sh
executable file
·47 lines (39 loc) · 1.03 KB
/
script.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
#!/bin/bash
# Função para exibir uso
function usage {
echo "Uso: $0 [on|off] [-c=<valores separados por vírgula>]"
exit 1
}
# Verifica se pelo menos um argumento foi passado
if [ "$#" -lt 1 ]; then
usage
fi
# Processa o primeiro argumento (on|off)
case "$1" in
on)
# Verifica se a flag -c foi passada
if [[ "$2" == -c=* ]]; then
valores="${2#-c=}"
IFS=',' read -r -a containers <<< "$valores"
else
# Se não houver -c, usa valores padrão
containers=(nginx mysql portainer workspace postgres)
fi
# Monta o comando docker-compose
comando="docker compose up -d"
# Adiciona cada container ao comando
for container in "${containers[@]}"; do
comando+=" $container"
done
# Exibe o comando gerado e executa
echo "Comando gerado:"
echo "$comando"
eval "$comando"
;;
off)
docker compose down
;;
*)
usage
;;
esac