Как исправить проблему SSL с Letsencrypt с помощью Dockerfile?

#nginx #dockerfile #lets-encrypt

Вопрос:

Я добавляю SSL-сертификат с Letsencrypt на свой веб-сайт. Итак, я использую Dockerfile для сборки nginx и установки в него certbot. Но во время сборки я столкнулся с проблемой при выполнении этой команды sudo certbot certonly --webroot --webroot-path=/user/share/nginx/html -d mydomain.com -d www.mydomain.com . Это всегда выдает ошибку типа Invalid response from http:// www.mydomain.com/.well-known/acme-challenge/Bc22IaBafBrDwKrk-46qVV8UPlPwFUQz5MvZkngcPmA .

Это мой конфигурационный файл nginx:

 server {
    listen 80;
    client_max_body_size 100M;
    server_name mydomain.com www.mydomain.com;

    location ~ /.well-known {
        allow all;
    }
}

server {
    listen 443;
    server_name mydomain.com www.mydomain.com;

    ssl on;
    # Use certificate and key provided by Let's Encrypt:
    ssl_certificate /etc/letsencrypt/live/mydomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mydomain.com/privkey.pem;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers 'EECDH AESGCM:EDH AESGCM:AES256 EECDH:AES256 EDH';

    location ~ /.well-known {
        allow all;
    }

    location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
        root   /usr/share/nginx/html;
        expires 3d;
        add_header Cache-Control "public";
        access_log off;
    }

    location / {
        root   /usr/share/nginx/html;
        expires 0;
        index  index.html index.htm;
        try_files $uri /index.html;
        add_header Cache-Control "no-store, no-cache, must-revalidate";
    }

    location /ping {
        return 200 'PONG';
    }

    location /api/ {
        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;
        # Out-of-the-box, nginx doesn't support environment variables inside most configuration blocks
        proxy_set_header Host $http_host;
        proxy_pass mybackend.ip;
    }
} 
 

Как я могу решить эту проблему? Буду признателен за любые предложения для меня. Большое спасибо.