@@ -60,7 +60,6 @@ function parse_params() {
6060# OUTS: None
6161function main() {
6262 # load config and variables for this project
63- source " $( dirname " ${BASH_SOURCE[0]} " ) /config_and_vars.sh"
6463 source " $( dirname " ${BASH_SOURCE[0]} " ) /shellcheck.sh"
6564
6665 trap script_trap_err ERR
@@ -83,101 +82,96 @@ function goto_myscript() {
8382 docker pull devmtl/figlet:1.0
8483
8584 clear;
86- message_is=" docker-stack-this"
87- docker run --rm devmtl/figlet:1.0 ${message_is} && sleep 2 && echo ;
88-
89- clear;
90- message_is=" If existing, remove stacks: "
91- docker run --rm devmtl/figlet:1.0 ${message_is} && sleep 2 && echo ;
92- ./rundown.sh
93-
94- clear;
95- message_is=" If not existing, create networks"
96- docker run --rm devmtl/figlet:1.0 ${message_is} && echo ;
97-
98- this_net=" ntw_front"
99- if [ ! " $( docker network ls --filter name=${this_net} -q) " ]; then
100- docker network create --driver overlay --attachable --opt encrypted " ${this_net} "
101- echo " Network: ${this_net} was created."
102- else
103- echo " Network: ${this_net} already exist."
104- fi
105-
106- this_net=" ntw_proxy"
107- if [ ! " $( docker network ls --filter name=${this_net} -q) " ]; then
108- docker network create --driver overlay --attachable --opt encrypted " ${this_net} "
109- echo " Network: ${this_net} was created."
110- else
111- echo " Network: ${this_net} already exist."
112- fi
113- echo ;
114-
115- message_is=" Show networks"
116- docker run --rm devmtl/figlet:1.0 ${message_is} && echo ;
117-
118- docker network ls | grep " ntw_" && echo && sleep 2;
85+ message_is=" docker"
86+ docker run --rm devmtl/figlet:1.0 ${message_is} && \
87+ message_is=" stack-this"
88+ docker run --rm devmtl/figlet:1.0 ${message_is} && sleep 2 && echo && \
89+
90+ # If existing, remove stacks: "
91+ ./rundown.sh && \
92+
93+ # If not existing, create networks"
94+ # create an overlay networks on docker swarm
95+ arr=( " ntw_front" " ntw_proxy" )
96+
97+ for i in " ${arr[@]} " ; do
98+ if [ ! " $( docker network ls --filter name=${i} -q) " ]; then
99+ docker network create --driver overlay --attachable --opt encrypted " ${i} "
100+ echo " Network: ${i} was created."
101+ else
102+ echo " Network: ${i} already exist."
103+ fi
104+ done
119105
106+ message_is=" Show networks" && docker run --rm devmtl/figlet:1.0 ${message_is} && echo && \
107+ docker network ls | grep " ntw_" && echo && sleep 2 && \
120108 clear;
121- message_is=" Launch stacks"
122- docker run --rm devmtl/figlet:1.0 ${message_is} && echo ;
123109
110+ message_is=" Launch stacks" && docker run --rm devmtl/figlet:1.0 ${message_is} && echo && \
124111
125112 # Set ACME file
126- mkdir -pv ./configs && \
127- touch ./configs/acme.json && \
128- chmod 600 acme.json && \
129-
130- cp dynamic_conf.yml ./configs/dynamic_conf.yml && \
131- cp traefik.yml ./configs/traefik.yml.yml && \
132-
133- # traefik
134- docker stack deploy stkproxy -c stack-proxy.yml && echo ; sleep 1 && \
135-
136- # webapps
137- docker stack deploy stkwhoami1 -c stack-whoami1.yml && echo ; sleep 1 && \
138-
139- # gui
140- # docker stack deploy stkgui -c stack-portainer.yml && echo; sleep 1;
141-
142- # swarmpit / constraint the db
113+ # mkdir -pv ~/./configs && \
114+ # touch ~/./configs/acme.json && \
115+ # cp dynamic_conf.yml ~/./configs/dynamic_conf.yml && \
116+ # cp traefik.yml ~/./configs/traefik.yml && \
117+ # chmod 600 ~/./configs/acme.json && \
118+ # chmod 600 ~/./configs/dynamic_conf.yml && \
119+ # chmod 600 ~/./configs/traefik.yml && \
120+
121+ # deploy apps
122+ docker stack deploy stkproxy -c stk_traefik.yml && \
123+ docker stack deploy stkwebapp -c stk_web.yml && \
124+ docker stack deploy stkgui -c stk_portainer.yml && echo && \
125+
126+ # deploy swarmpit / constraint the db
143127 # export NODE_ID=$(docker info -f '{{.Swarm.NodeID}}')
144128 # docker node update --label-add swarmpit.db-data=true $NODE_ID && echo;
145129 # docker stack deploy toolswarmpit -c stack-swarmpit.yml && echo; sleep 1;
146130
147- # wordpress
131+ # deploy wordpress
148132 # the system is path is at ./docker-stack5
149133 # _MYSQL_DIR="$(pwd)/html/db/mysql"
150134 # mkdir -p "$_MYSQL_DIR"
151135
152136 # docker stack deploy toolwp -c toolwp.yml
153137 # echo; sleep 1;
154138
155- clear;
156- message_is=" Check services"
157- docker run --rm devmtl/figlet:1.0 ${message_is} && echo ;
158-
159- MIN=" 1"
160- MAX=" 8"
161- for ACTION in $( seq ${MIN} ${MAX} ) ; do
162- echo && echo " docker service ls | Check ${ACTION} " of ${MAX} ; echo ;
163- docker service ls && echo && sleep 2;
164- done
165- echo ;
139+ FLAG_WAIT=" true"
140+ while [[ ${FLAG_WAIT} == " true" ]]; do
141+
142+ # check if apps are running on K8s (or are in progress)
143+ IN_PROGRESS=$( docker service ls | awk ' {print $4}' | grep " 0/" | wc -l)
144+
145+ if [[ ${IN_PROGRESS} -ne 0 ]]; then
146+ docker service ls ;
147+ echo " ===> Deployment in progress..." && echo && \
148+ sleep 2 ;
149+ elif [[ ${IN_PROGRESS} -eq 0 ]]; then
150+ echo " App deployed!" && echo && \
151+ FLAG_WAIT=" false" && sleep 2 && \
152+ docker service ls ;
153+ else
154+ echo " Unexpected error (err45)" ;
155+ fi
156+ done && \
157+ echo && \
158+
166159
167- docker stack ls && echo ;
160+ message_is=" Check services" && docker run --rm devmtl/figlet:1.0 ${message_is} && echo && \
161+ docker service ls && echo && \
168162
169- message_is=" Your turn"
170- docker run --rm devmtl/figlet:1.0 ${message_is} && echo ;
163+ message_is=" Your turn" && docker run --rm devmtl/figlet:1.0 ${message_is} && echo && \
171164
172165 # See Traefik logs
173166 echo " If you enjoy this project, Give it a Star or Fork it :)" ;
174- echo " https://github.com/pascalandy/docker-stack-this/" && echo ;
167+ echo " https://github.com/pascalandy/docker-stack-this/" && echo && \
175168
176169 # See Traefik logs
177- echo " Command ideas: " ;
178- echo " docker service logs -f stkproxy_traefik" ;
179- echo " docker service ls" ;
180- echo " docker stack ls" ; echo ;
170+ echo " Command ideas: " && \
171+ echo " docker service logs -f stkproxy_traefik" && \
172+ echo " docker service ls" && \
173+ echo " docker ps" && \
174+ echo " docker stack ls" && echo ;
181175}
182176
183177# --- Entrypoint
0 commit comments