# Команды и сценарии ## CLI: letsencrypt-regru Основные режимы: - `--check` — проверить срок действия и тип (staging/production) - `--info` — показать расширенную информацию по сертификату - `--obtain` — принудительно получить production сертификат - `--renew` — обновить существующий сертификат - `--auto` — авто-режим: создать/обновить по необходимости Тесты/диагностика: - `--staging` — тестовый сертификат LE staging (без лимитов) - `--test-cert` — самоподписанный тестовый сертификат (мгновенно, без интернета) - `--test-api` — проверка API reg.ru (IP, баланс) - `--test-dns` — полный цикл DNS TXT add → ожидание → nslookup → cleanup Служебные (вызывает certbot): - `--auth-hook` - `--cleanup-hook` Дополнительно: - `-c/--config ` — путь к конфигу - `-v/--verbose` — подробные логи - `--force-cleanup` — очистка lock-файлов certbot ### Мультидоменный режим Если в конфиге указан `domains[]`, команды `--check/--info/--staging/--obtain/--renew/--auto/--test-*` будут выполняться **по всем доменам**. ## Makefile Часто используемые команды: - `make install` / `make uninstall` - `make test-cert` - `make obtain` - `make renew` - `make run` (аналог `--auto`) - `make status` - `make logs` ### CI / Wiki (workflow dispatch) Эти команды **не выполняют деплой/синк локально** — они делают API-запрос в Actions на `gitea.example.com` и запускают соответствующий workflow. - `make wiki-sync` — запустить синхронизацию `wiki/` в Wiki репозитория - `make ci-release TAG=vX.Y.Z` (или `make ci-release VERSION=X.Y.Z`) — запустить релизный workflow - `make deploy-service` (опционально `REF=branch_or_tag`) — запустить деплойный workflow `wiki-sync` также запускается автоматически при push в `master`, если изменились файлы в `wiki/**`. Нужно задать токен (любой из): - `DFGIT_TOKEN` (предпочтительно) - `GIT_TOKEN` - `GITEA_TOKEN` - `GITEA_ACCESS_TOKEN` Примеры: ```bash # Windows PowerShell $env:DFGIT_TOKEN = ""; make wiki-sync $env:DFGIT_TOKEN = ""; make ci-release TAG=v1.2.3 $env:DFGIT_TOKEN = ""; make deploy-service $env:DFGIT_TOKEN = ""; make deploy-service REF=master ``` ```bash # Linux/macOS DFGIT_TOKEN="" make wiki-sync DFGIT_TOKEN="" make ci-release TAG=v1.2.3 DFGIT_TOKEN="" make deploy-service DFGIT_TOKEN="" make deploy-service REF=master ``` Примечания: - Базовый URL задаётся переменной `DFGIT_URL` (по умолчанию `https://gitea.example.com`). - Репозиторий задаётся `DFGIT_REPO` (по умолчанию `your_username/configure_nginx_manager`). - Для Linux/macOS требуется установленный `curl`. ## Типовой workflow (рекомендуется) 1) Подготовка - `letsencrypt-regru --test-api -v` - `letsencrypt-regru --test-dns -v` 2) Тестирование без лимитов - `letsencrypt-regru --staging` **или** `letsencrypt-regru --test-cert` 3) Production - `letsencrypt-regru --obtain` 4) Автопродление - systemd timer или cron → `letsencrypt-regru --auto` Если используете NPM — см. [Nginx_Proxy_Manager](Nginx_Proxy_Manager.md).