Как в django добавить ssl (https)?

как изменить http на https?

Развертывание django с помощью docker compose. (Тестовая база данных, статический файл, медиафайл) Django + psycopg2 + uWSGI

http для примера:
https://github.com/mazyargholami/django-docker

version: "3.9"

services:
  app:
    build:
      context: .
    restart: always
    volumes:
      - static-data:/vol/web
    environment:
      - DB_HOST=db
      - DB_NAME=${DB_NAME}
      - DB_USER=${DB_USER}
      - DB_PASS=${DB_PASS}
      - SECRET_KEY=${SECRET_KEY}
      - ALLOWED_HOSTS=${ALLOWED_HOSTS}
    depends_on:
      - db

  db:
    image: postgres:13-alpine
    restart: always
    volumes:
      - postgres-data:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=${DB_NAME}
      - POSTGRES_USER=${DB_USER}
      - POSTGRES_PASSWORD=${DB_PASS}

  proxy:
    build:
      context: ./proxy
    restart: always
    depends_on:
      - app
    ports:
      - 80:8000
    volumes:
      - static-data:/vol/static

volumes:
  postgres-data:
  static-data:
server {
  listen ${LISTEN_PORT};

  location /static {
    alias /vol/static;
  }

  location / {
    uwsgi_pass            ${APP_HOST}:${APP_PORT};
    include               /etc/nginx/uwsgi_params;
    client_max_body_size  10M;
  }
}

https? как добавить ssl сертификат? или certbot?

Я вижу эту страницу и у меня есть хорошее решение, но у меня проблема с созданием SSL сертификата с помощью Certbot!

https://blog.muteshi.com/posts/deploying-django-with-docker-and-lets-encrypt

Терминал: docker-compose run --rm certbot certonly --webroot --webroot-path /var/www/certbot/ --dry-run -d muteshi.dev

Ошибка: Сохранение журнала отладки в /var/log/letsencrypt/letsencrypt.log Имитация запроса сертификата для muteshi.dev

Certbot не смог аутентифицировать некоторые домены (аутентификатор: webroot). Центр сертификации сообщил об этих проблемах: Домен: muteshi.dev Тип: соединение Подробности: 34.197.15.82: Fetching http://muteshi.dev/.well-known/acme-challenge/UuZdxyaIC5VamQ0vRWZ2G8ImwI9RetS-IIr_iCjkZMk: Connection refused

Подсказка: Центру сертификации не удалось загрузить временные файлы вызова, созданные Certbot. Убедитесь, что перечисленные домены обслуживают свое содержимое из указанного --webroot-path/-w и что созданные там файлы могут быть загружены из интернета.

Некоторые задачи оказались неудачными. Обратитесь за помощью или поищите решения на https://community.letsencrypt.org. Смотрите лог-файл /var/log/letsencrypt/letsencrypt.log или повторно запустите Certbot с параметром -v для получения более подробной информации.

Вернуться на верх