feat: CI/CD, per-domain HTTPS, backup, config generator
- sites.yml — единый источник истины для всех сайтов - generate-configs.sh — генератор nginx конфигов, certbot domains.txt, .env - nginx: per-domain HTTPS (вместо all-or-nothing switch-config) - certbot: единый renew-all.sh, динамический init (без 5 дублирующих скриптов) - backup: контейнер с pg_dump + rclone (Яндекс.Диск), ежедневно в 3AM - Gitea + Gitea Runner в docker-compose (self-hosted Git + CI/CD) - .gitea/workflows/deploy.yml — CI/CD pipeline: push → авто-деплой - Makefile: generate-configs, reconfig, deploy, backup, restore, gitea, help
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
#!/bin/sh
|
||||
# renew-all.sh — единый скрипт обновления всех сертификатов
|
||||
set -e
|
||||
|
||||
echo "=== Certbot renewal ==="
|
||||
|
||||
# Обновляем все сертификаты
|
||||
certbot renew --webroot -w /var/www/certbot
|
||||
|
||||
# Перезагружаем nginx чтобы он подхватил новые сертификаты
|
||||
if command -v docker > /dev/null 2>&1; then
|
||||
echo "→ Перезагружаем nginx..."
|
||||
docker exec nginx nginx -s reload 2>/dev/null || \
|
||||
echo " (nginx reload не удался, возможно контейнер не запущен)"
|
||||
fi
|
||||
|
||||
echo "=== Renewal завершён ==="
|
||||
Reference in New Issue
Block a user