Назад | Перейти на главную страницу

Letsencrypt с автоматической сборкой сервера nginx

У меня есть веб-сервер с несколькими контейнерами Docker, один из которых является nginx. Для упрощения повторного развертывания сервер создается с помощью сценария.

Теперь я хочу использовать сертификаты letsencrypt. Но:

  1. letsencrypt требуется работающий веб-сервер HTTP для проверки, и
  2. nginx с включенным HTTPS требует сертификатов для запуска.

Скрипт не может сначала запустить nginx, потому что сертификаты будут отсутствовать. Но сценарий также не может сначала получить сертификаты, потому что для этого потребуется работающий веб-сервер. Классическая проблема курицы и яйца.

Одно решение было бы

  1. сначала создайте nginx с конфигурацией только для HTTP,
  2. запустить certbot для получения сертификатов,
  3. измените конфигурацию nginx и перезапустите веб-сервер в режиме HTTPS.

Это не кажется изящным решением, поэтому мне интересно, придумал ли кто-нибудь лучшее.