40 lines
1.1 KiB
Bash
40 lines
1.1 KiB
Bash
|
|
#!/bin/bash
|
|||
|
|
set -e
|
|||
|
|
|
|||
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|||
|
|
PROJECT_ROOT="$SCRIPT_DIR/.."
|
|||
|
|
|
|||
|
|
if [ ! -f "$PROJECT_ROOT/.env" ]; then
|
|||
|
|
echo "Файл .env не найден. Копирую из .env.example..."
|
|||
|
|
cp "$PROJECT_ROOT/.env.example" "$PROJECT_ROOT/.env"
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
export $(grep -v '^#' "$PROJECT_ROOT/.env" | xargs)
|
|||
|
|
|
|||
|
|
# Создаём каталоги
|
|||
|
|
mkdir -p \
|
|||
|
|
"$PROJECT_ROOT/dnsmasq" \
|
|||
|
|
"$PROJECT_ROOT/nginx/{certs,vhost.d,html,conf.d}" \
|
|||
|
|
"$PROJECT_ROOT/acme" \
|
|||
|
|
"$PROJECT_ROOT/ca" \
|
|||
|
|
"$PROJECT_ROOT/services"
|
|||
|
|
|
|||
|
|
# Создаём общую Docker-сеть с фиксированными настройками
|
|||
|
|
echo "Проверка сети devnet..."
|
|||
|
|
if ! docker network inspect devnet &>/dev/null; then
|
|||
|
|
echo "Создаём сеть devnet..."
|
|||
|
|
docker network create \
|
|||
|
|
--subnet="${SUBNET}" \
|
|||
|
|
--gateway="${GATEWAY}" \
|
|||
|
|
devnet
|
|||
|
|
else
|
|||
|
|
echo "Сеть devnet уже существует."
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
"$SCRIPT_DIR/02-apply-config.sh"
|
|||
|
|
|
|||
|
|
echo "Проект инициализирован."
|
|||
|
|
echo "Домен: .$LOCAL_DOMAIN"
|
|||
|
|
if [ -n "$PUBLIC_DOMAIN" ]; then
|
|||
|
|
echo "Публичный домен: $PUBLIC_DOMAIN"
|
|||
|
|
fi
|