Files
configure_nginx_manager/wiki/Deploy_Actions_Secrets.md
Dmitriy Fofanov 3aacf626a3
Синхронизация Wiki / Синхронизация Wiki (push) Successful in 2s
Функция: Добавлен рабочий процесс GitHub Actions для синхронизации вики
- Реализован новый рабочий процесс в `.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` для упрощения навигации по страницам вики.
2026-02-24 22:27:34 +03:00

2.6 KiB

Deploy через Actions и Secrets

Эта страница описывает деплой через workflow .github/workflows/deploy-service.yml.

Что делает workflow

  • деплоит проект на сервер 192.168.10.14 по SSH (ключ)
  • перед деплоем генерирует config.json из secrets
  • копирует архив на сервер, распаковывает в DEPLOY_PATH
  • перезапускает systemd-сервис DEPLOY_SERVICE

Обязательные secrets

Доступ к репозиторию

  • GIT_TOKEN (или GITEA_TOKEN)

SSH и деплой

  • DEPLOY_HOST — должен быть 192.168.10.14
  • DEPLOY_PORT — обычно 22
  • DEPLOY_USER
  • DEPLOY_SSH_PRIVATE_KEY
  • DEPLOY_PATH
  • DEPLOY_SERVICE

Генерация config.json

  • CFG_REGRU_USERNAME
  • CFG_REGRU_PASSWORD
  • CFG_EMAIL
  • CFG_DOMAINS

CFG_DOMAINS поддерживает два формата:

  1. JSON-массив:
["dfv24.com", "pages.github.dfv24.com"]
  1. строка через запятую:
dfv24.com,pages.github.dfv24.com

Если CFG_DOMAIN не указан, в поле domain берётся первый домен из CFG_DOMAINS.

Опциональные secrets

  • DEPLOY_SSH_KNOWN_HOSTS
  • CFG_DOMAIN
  • CFG_WILDCARD
  • CFG_CERT_DIR
  • CFG_LOG_FILE
  • CFG_DNS_PROPAGATION_WAIT
  • CFG_DNS_CHECK_ATTEMPTS
  • CFG_DNS_CHECK_INTERVAL
  • CFG_RENEWAL_DAYS
  • CFG_NPM_ENABLED
  • CFG_NPM_HOST
  • CFG_NPM_EMAIL
  • CFG_NPM_PASSWORD

Соответствие полей config.json

  • CFG_REGRU_USERNAMEregru_username
  • CFG_REGRU_PASSWORDregru_password
  • CFG_DOMAIN / первый из CFG_DOMAINSdomain
  • CFG_DOMAINSdomains
  • CFG_WILDCARDwildcard
  • CFG_EMAILemail
  • CFG_CERT_DIRcert_dir
  • CFG_LOG_FILElog_file
  • CFG_DNS_PROPAGATION_WAITdns_propagation_wait
  • CFG_DNS_CHECK_ATTEMPTSdns_check_attempts
  • CFG_DNS_CHECK_INTERVALdns_check_interval
  • CFG_RENEWAL_DAYSrenewal_days
  • CFG_NPM_ENABLEDnpm_enabled
  • CFG_NPM_HOSTnpm_host
  • CFG_NPM_EMAILnpm_email
  • CFG_NPM_PASSWORDnpm_password

Как запустить деплой

  1. Откройте Actions
  2. Запустите workflow Deploy scripts to remote server
  3. При необходимости задайте ref (ветка/тег/коммит)

После завершения проверьте статус сервиса на сервере:

sudo systemctl status letsencrypt-regru.service