153 lines
3.8 KiB
Bash
Executable File
153 lines
3.8 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# zestawianie całej magii
|
|
#
|
|
|
|
# konfiguracja
|
|
static_data_dir="/opt/hangar18"
|
|
if [[ "$1" != "" ]]; then
|
|
static_data_dir="$1"
|
|
fi
|
|
|
|
# katalog obecny
|
|
startdir=`pwd`
|
|
|
|
# prefix obrazów, kontenerów, ...
|
|
prefix="plug"
|
|
|
|
# budujemy nowy dom...
|
|
cd images/
|
|
for img in *; do
|
|
# informujemy
|
|
echo -ne "\n\n - buduję: $prefix/$img\n"
|
|
# budujemy
|
|
docker build -t "$prefix/$img" $img || exit 1
|
|
done
|
|
|
|
# wracamy
|
|
cd "$startdir"
|
|
|
|
|
|
#
|
|
# katalog konfiguracji, danych, i tak dalej
|
|
#
|
|
|
|
# potrzebujemy sudo
|
|
echo "By jechać dalej, potrzebujemy sudo. To ja poproszę..."
|
|
sudo echo -ne " ...mamy sudo, jedziemy dalej.\n\n\n" || exit 2
|
|
|
|
# tworzymy
|
|
sudo mkdir -p "$static_data_dir"
|
|
# run
|
|
sudo mkdir "$static_data_dir/run"
|
|
sudo mkdir "$static_data_dir/run/php-fpm"
|
|
sudo mkdir "$static_data_dir/run/openldap"
|
|
# logi
|
|
sudo mkdir "$static_data_dir/logs/"
|
|
sudo mkdir "$static_data_dir/logs/postgres"
|
|
sudo mkdir "$static_data_dir/logs/php-fpm"
|
|
sudo mkdir "$static_data_dir/logs/openldap"
|
|
sudo mkdir "$static_data_dir/logs/nginx-public"
|
|
sudo mkdir "$static_data_dir/logs/nginx-internal"
|
|
# dane
|
|
sudo mkdir "$static_data_dir/data"
|
|
sudo mkdir "$static_data_dir/data/postgres"
|
|
sudo mkdir "$static_data_dir/data/php-fpm"
|
|
sudo mkdir "$static_data_dir/data/php-fpm/frontend"
|
|
sudo mkdir "$static_data_dir/data/php-fpm/rest"
|
|
sudo mkdir "$static_data_dir/data/php-fpm/pgadmin"
|
|
sudo mkdir "$static_data_dir/data/php-fpm/ldapadmin"
|
|
|
|
# configs if needed
|
|
if [ ! -e "$static_data_dir/configs" ]; then
|
|
sudo cp -a static_data/configs "$static_data_dir/configs"
|
|
fi
|
|
|
|
# uprawnienia
|
|
sudo chown -R root:root "$static_data_dir"
|
|
|
|
|
|
#
|
|
# obrazy
|
|
#
|
|
|
|
# postgres
|
|
img_postgres="$prefix/postgres"
|
|
img_nginx="$prefix/nginx"
|
|
img_phpfpm="$prefix/php-fpm"
|
|
|
|
#
|
|
# kontenery
|
|
#
|
|
|
|
# postgres
|
|
cnt_postgres="$prefix-postgres"
|
|
# nginx
|
|
cnt_nginx_public="$prefix-nginx.public"
|
|
cnt_nginx_internal="$prefix-nginx.internal"
|
|
# php-fpm
|
|
cnt_phpfpm_frontend="$prefix-php-fpm.frontend"
|
|
cnt_phpfpm_rest="$prefix-php-fpm.rest"
|
|
cnt_phpfpm_pgadmin="$prefix-php-fpm.pgadmin"
|
|
cnt_phpfpm_ldapadmin="$prefix-php-fpm.ldapadmin"
|
|
|
|
|
|
#
|
|
# czyścimy
|
|
#
|
|
docker kill $cnt_postgres $cnt_nginx_public $cnt_nginx_internal $cnt_phpfpm_frontend $cnt_phpfpm_rest $cnt_phpfpm_pgadmin $cnt_phpfpm_ldapadmin
|
|
docker rm -v $cnt_postgres $cnt_nginx_public $cnt_nginx_internal $cnt_phpfpm_frontend $cnt_phpfpm_rest $cnt_phpfpm_pgadmin $cnt_phpfpm_ldapadmin
|
|
|
|
#
|
|
# odpalamy kolejno dockery
|
|
#
|
|
|
|
# postgres wpierw, inne się doń łączą
|
|
#docker run -d \
|
|
# -v "$static_data_dir/data/postgres":/var/lib/postgresql/
|
|
|
|
# czas na nginxy
|
|
# - publiczny
|
|
docker run -d \
|
|
-v "$static_data_dir/configs/nginx-public/":/etc/nginx/sites-enabled:ro \
|
|
-v "$static_data_dir/logs/nginx-public/"/var/log/nginx/ \
|
|
-v "$static_data_dir/run/php-fpm/":/var/run/php-fpm/ \
|
|
--name $cnt_nginx_public \
|
|
$img_nginx
|
|
# - wewnętrzny
|
|
docker run -d \
|
|
-v "$static_data_dir/configs/nginx-internal/":/etc/nginx/sites-enabled:ro \
|
|
-v "$static_data_dir/logs/nginx-internal/"/var/log/nginx/ \
|
|
-v "$static_data_dir/run/php-fpm/":/var/run/php-fpm/ \
|
|
--name $cnt_nginx_internal \
|
|
$img_nginx
|
|
|
|
# a teraz php-fpmy!
|
|
# - frontend
|
|
docker run -d \
|
|
-v "$static_data_dir/logs/php-fpm/":/var/log/php-fpm \
|
|
-v "$static_data_dir/run/php-fpm/":/var/run/php-fpm \
|
|
-e "APP_NAME=frontend" \
|
|
--name $cnt_phpfpm_frontend \
|
|
$img_phpfpm
|
|
# - rest
|
|
docker run -d \
|
|
-v "$static_data_dir/logs/php-fpm/":/var/log/php-fpm \
|
|
-v "$static_data_dir/run/php-fpm/":/var/run/php-fpm \
|
|
-e "APP_NAME=rest" \
|
|
--name $cnt_phpfpm_rest \
|
|
$img_phpfpm
|
|
# - pgadmin
|
|
docker run -d \
|
|
-v "$static_data_dir/logs/php-fpm/":/var/log/php-fpm \
|
|
-v "$static_data_dir/run/php-fpm/":/var/run/php-fpm \
|
|
-e "APP_NAME=pgadmin" \
|
|
--name $cnt_phpfpm_pgadmin \
|
|
$img_phpfpm
|
|
# - ldapadmin
|
|
#docker run -d \
|
|
# -v "$static_data_dir/logs/php-fpm/":/var/log/php-fpm \
|
|
# -v "$static_data_dir/run/php-fpm/":/var/run/php-fpm \
|
|
# -e "APP_NAME=ldapadmin" \
|
|
# --name $cnt_phpfpm_ldapadmin \
|
|
# $img_phpfpm |