Я пытаюсь настроить Traefik для https в докере. Но получаю ошибку:
traefik | time = "2020-07-10T11: 33: 46Z" level = error msg = "Невозможно получить сертификат ACME для доменов« my.domain.com »: невозможно создать сертификат для доменов [my.domain.com]: ошибка: возникла проблема с одним или несколькими доменами: \ n [my.domain.com] acme: error: 403 :: urn: ietf: params: acme: error: unauthorized :: Неверный сертификат проверки для задачи tls-alpn-01. Отсутствует расширение acmeValidationV1., Url: \ n "routerName = project_name @ docker rule =" Host (
my.domain.com
) "providerName = myresolver.acme
Я искал решения, выполнив поиск по терминам "Неверный сертификат проверки для вызова tls-alpn-01" и "Отсутствует расширение acmeValidationV1"но я не смог найти ничего, что решило бы мою проблему.
Вот полный файл docker-compose:
version: "3"
services:
traefik:
image: "traefik:v2.2"
container_name: "traefik"
command:
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.websecure.address=:8082"
- "--certificatesresolvers.myresolver.acme.tlschallenge=true"
- "--certificatesresolvers.myresolver.acme.email=me@email.com"
- "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json"
ports:
- "8082:8082"
volumes:
- "./letsencrypt:/letsencrypt"
- "/var/run/docker.sock:/var/run/docker.sock:ro"
project_name:
container_name: project_name
build:
context: .
dockerfile: Dockerfile
volumes:
- ./:/app
command: sh -c "uvicorn src.main:app --host=0.0.0.0 --port=8000"
labels:
- "traefik.enable=true"
- "traefik.http.routers.project_name.rule=Host(`my.domain.com`)"
- "traefik.http.routers.project_name.entrypoints=websecure"
- "traefik.http.routers.project_name.tls.certresolver=myresolver"
- "traefik.http.services.project_name.loadbalancer.server.port=8000"