Files
shop-go/scripts/enable-ssl.sh
T

39 lines
1.0 KiB
Bash

#!/usr/bin/env bash
# Переключение Caddy на продакшен-режим с SSL (Ubuntu + домен)
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "${ROOT_DIR}"
if [[ ! -f .env ]]; then
echo "Сначала запустите: ./scripts/deploy.sh"
exit 1
fi
DOMAIN="${1:-}"
EMAIL="${2:-}"
if [[ -z "${DOMAIN}" || -z "${EMAIL}" ]]; then
echo "Использование: ./scripts/enable-ssl.sh <домен> <email>"
echo "Пример: ./scripts/enable-ssl.sh shop.example.com admin@example.com"
exit 1
fi
set_env() {
local key="$1" val="$2"
if grep -q "^${key}=" .env; then
sed -i "s|^${key}=.*|${key}=${val}|" .env
else
echo "${key}=${val}" >> .env
fi
}
set_env DOMAIN "${DOMAIN}"
set_env CADDY_EMAIL "${EMAIL}"
set_env CADDYFILE "./Caddyfile.prod"
docker compose up -d --force-recreate caddy
echo "SSL включён для https://${DOMAIN}"
echo "Убедитесь, что DNS A-запись указывает на этот сервер."