Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
- Реализован новый рабочий процесс в `.github/workflows/wiki-sync.yml` для синхронизации вики с основным репозиторием при отправке изменений в ветку master. - Рабочий процесс включает шаги клонирования репозитория, проверки наличия папки wiki и синхронизации содержимого вики с вики DFGit. Документация: Создание описания секретов для развертывания и конфигурации - Добавлен файл `secrets_description.md`, подробно описывающий необходимые секреты для развертывания и настройки проекта `configure_nginx_manager`. Документация: Добавление документации по сборке и релизам - Создан файл `Build_and_Release.md`, описывающий процесс сборки с использованием PyInstaller и этапы упаковки релиза. Документация: Введение журнала изменений для отслеживания версий - Добавлен файл `Changelog.md` для краткого описания основных версий и изменений, внесенных в проект. Документация: Документирование команд и скриптов, доступных в проекте - Создан файл `Commands.md` для перечисления команд CLI и команд Makefile для удобства пользователей. Документация: Предоставление подробной информации о конфигурации проекта - Добавлен файл `Configuration.md` для объяснения структуры конфигурации JSON и параметров. Документация: Описание действий развертывания и необходимых секретов - Создан файл `Deploy_Actions_Secrets.md` для описания секретов, необходимых для развертывания через GitHub Actions. Документация: Объяснение методов синхронизации Gitea с GitHub - Добавлен файл `Gitea_Sync.md` для описания различных методов синхронизации репозиториев из Gitea в GitHub. Документация: Создание домашней страницы для вики проекта - Создан файл `Home.md`, который служит основной точкой входа для вики проекта. Документация: Описание процедур установки проекта - Добавлен файл `Installation.md` с подробным описанием методов и требований к установке. Документация: Описание рабочего процесса Let's Encrypt для управления сертификатами - Создан файл `LetsEncrypt_Workflow.md` для объяснения процесса получения и обновления SSL-сертификатов. Документация: Интеграция с документацией Nginx Proxy Manager - Добавлен файл `Nginx_Proxy_Manager.md` для объяснения синхронизации сертификатов с NPM. Документация: Определение структуры проекта для лучшего понимания - Создан файл `Project_Structure.md` для описания ключевых файлов и скриптов проекта. Документация: Устранение распространенных проблем с API reg.ru - Добавлен файл `RegRu_API_Troubleshooting.md` для помощи пользователям в диагностике и устранении проблем, связанных с API. Документация: Предоставить рекомендации по тестированию проекта - Создан файл `Testing.md`, описывающий стратегии тестирования и ограничения, связанные с Let's Encrypt. Документация: Добавить боковую панель навигации для вики - Создан файл `_Sidebar.md` для упрощения навигации по страницам вики.
2.9 KiB
2.9 KiB
Конфигурация
Проект использует JSON-конфиг (пример: config.json.example).
Важно про мультидоменный режим
Скрипт поддерживает:
- один домен в поле
domain - список доменов в поле
domains(массив строк) - оба поля одновременно (будет объединение без дублей)
Пример:
{
"regru_username": "your_username",
"regru_password": "your_password",
"domain": "dfv24.com",
"domains": [
"dfv24.com",
"pages.github.dfv24.com"
],
"wildcard": true,
"email": "admin@dfv24.com",
"cert_dir": "/etc/letsencrypt/live",
"log_file": "/var/log/letsencrypt_regru.log",
"dns_propagation_wait": 60,
"dns_check_attempts": 10,
"dns_check_interval": 10,
"renewal_days": 30,
"npm_enabled": true,
"npm_host": "http://192.168.10.14:81",
"npm_email": "admin@example.com",
"npm_password": "changeme"
}
Параметры конфигурации
reg.ru API
regru_username,regru_password- учётные данные для API reg.ru
- IP должен быть разрешён в настройках API (см. RegRu_API_Troubleshooting)
Домены
domain: основной домен (строка)domains: массив доменовwildcard: еслиtrue, скрипт будет запрашивать-d <domain>и-d *.<domain>- обратите внимание: этот флаг сейчас общий для всех доменов из массива
Let’s Encrypt
email: email для регистрации в Let’s Encryptrenewal_days: порог автопродления (например, 30)
DNS ожидание/проверки
dns_propagation_wait: сколько секунд ждать после добавления TXTdns_check_attempts: сколько попыток проверки черезnslookupdns_check_interval: интервал между попытками
Пути
cert_dir: базовая папка сертификатов (обычно/etc/letsencrypt/live)log_file: файл логов
Nginx Proxy Manager (опционально)
npm_enabled: включить синхронизацию сертификатов в NPMnpm_host: URL NPM (пример:http://10.10.10.14:81)npm_email,npm_password: учётные данные
Подробности: Nginx_Proxy_Manager.
Проверка конфига
letsencrypt-regru --test-api -vletsencrypt-regru --test-dns -vletsencrypt-regru --check -v
Где хранить конфиг
- храните конфиг с правами
600 - владелец: root
Пример:
sudo chmod 600 /etc/letsencrypt/regru_config.jsonsudo chown root:root /etc/letsencrypt/regru_config.json