Конфигурация Nginx и SSL внутри контейнера docker не работает

Я использую следующий файл nginx conf :

server {
    listen 80;
    server_name domain;

    # Redirect HTTP to HTTPS
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl;
    server_name localhost;

    ssl_certificate /etc/nginx/cert/ddomain.crt;
    ssl_certificate_key /etc/nginx/cert/domain.key;

    location / {
        proxy_pass http://0.0.0.0:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Я использую следующий файл docker для запуска контейнера. Этот контейнер работает на 8000 порту.

FROM python:3.8

# Set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# Set the working directory in the container
WORKDIR /app

# Install system dependencies
RUN apt-get update && apt-get install -y \
    gcc \
    gettext \
    dbus \
    libdbus-1-dev \
    libcups2-dev \
    libcairo2-dev \
    libgirepository1.0-dev \
    libgtk-3-dev \
    libsecret-1-dev \
    pkg-config \
    wget \
    nginx \
    && rm -rf /var/lib/apt/lists/*

# Copy the requirements file and install Python dependencies
COPY requirements.txt /app/
RUN pip install --no-cache-dir -r requirements.txt

# Copy SSL certificate files
COPY ssl_certificates/domain.crt /etc/nginx/cert/domain.crt
COPY ssl_certificates/domain.key /etc/nginx/cert/domain.key

# Copy the Nginx configuration file
COPY nginx.conf /etc/nginx/conf.d/default.conf

# Copy the rest of the application files
COPY . /app/

# Expose port 8000 to allow communication to/from server
EXPOSE 8000

# Your application's command to run
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

Вот команда, которую я использую для запуска контейнера

docker run -d -p 8000:8000 --name container_name image name

При обращении к приложению с помощью https://example.com:8080/. (8080 порт указывает на 8000 порт сервера) браузер показывает :

Сообщение об ошибке, например: "Этот сайт не может обеспечить безопасное соединение"

Когда я проверяю логи docker: "Вы обращаетесь к серверу разработки по HTTPS, но он поддерживает только HTTP."

Как включить HTTPS для моего домена, используя файл docker и nginx?

Пожалуйста, помогите

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