Files
local-dns/scripts/00-init.sh

40 lines
1.1 KiB
Bash
Raw Normal View History

2026-02-13 01:47:50 +03:00
#!/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