1 Question: Traefik / SSL / LetsEncrypt Faulty

question créée à Sat, Mar 16, 2019 12:00 AM

J'essaie de configurer letEncrypt avec traeffik et quoi que je fasse, cela ne semble pas fonctionner. Au moment où j'obtiens l'erreur suivante:

 entrer la description de l'image ici

D'autres publications SO ont indiqué que cela pourrait être dû à la non-utilisation du défi http pour traeffik ( Traefik émettra un certificat au lieu de Let's encrypt ), mais je l'utilise donc je n'ai aucune idée honnêtement (cela ne résout pas le problème - ne ferme pas). Mes fichiers de configuration semblent être petits, mais je n’obtiens aucun retour d’erreur, alors ma capacité à itérer lors de pauses est réduite. Si quelqu'un peut vous aider à résoudre ce problème, je vous en serais reconnaissant. J'y travaille depuis longtemps et je ne sais pas quoi faire.

Je lance les trois fichiers suivants ci-dessous à l'aide de ce petit script bash:

root@ubuntu-1gb-nyc3-01:/lowteck# cat ./runSwarm.sh 
#!/bin/bash

./buildandpush.sh
cd ./back
./buildandpush.sh
cd ..

docker volume prune -f
docker kill $(docker ps -q)
docker rm $(docker ps -a -q)
 docker swarm init \
   --advertise-addr 104.236.214.151
docker network create -d overlay --attachable proxy
docker stack deploy --compose-file=stage.yaml prod2 
docker stack deploy --compose-file=traefik.yaml prodTraefik

Voici mon traefik.toml:

root@ubuntu-1gb-nyc3-01:/lowteck# cat traefik.toml 
logLevel = "DEBUG"
defaultEntryPoints = ["http", "https"]

[web]

[entryPoints]
  [entryPoints.http]
  address = ":80"
  [entryPoints.http.forwardedHeaders]
    trustedIPs = ["104.236.214.151"]
  [entryPoints.https]
  address = ":443"
    [entryPoints.https.tls]

[acme]
  caServer = "https://acme-v02.api.letsencrypt.org/directory"
  email = "pweyand@gmail.com"
  storage = "acme.json"
  entryPoint = "https"
  onHostRule = true 
  [acme.httpChallenge]
    entryPoint = "http"

[[acme.domains]]
  main = "lowteck.com"
  sans = ["www.lowteck.com"]

[docker]
  domain = "traefik"
  watch = true
  swarmmode = true
  network="web"

Voici mon traefik.yaml:

root@ubuntu-1gb-nyc3-01:/lowteck# cat traefik.yaml 
version: '3.3'

networks:
  proxy:
    external: true

configs:
  traefik.toml:
    file: ./traefik.toml

services:

  traefik:
    image: traefik
    ports:
      - "80:80"
      - "8080:8080"
      - "443:443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    configs:
      - source: traefik.toml
        target: /etc/traefik/traefik.toml
    labels:
      - "traefik.enable=false"
    networks:
      - proxy
    deploy:
      replicas: 1
      placement:
        constraints: [node.role == manager] 

Voici mon stage.yaml:

root@ubuntu-1gb-nyc3-01:/lowteck# cat stage.yaml 
version: "3.3"

networks:
  default:
    external: false
  proxy:
    external: true

services:
  back:
    image: patientplatypus/lowtechback:latest
    ports: 
      - '5000:5000'
    networks:
      - proxy
      - default
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
        max_attempts: 5
        window: 120s
      labels:
        - "traefik.docker.backend=back"
        - "traefik.port=5000"
        - "traefik.frontend.rule=Host:back.lowteck.com"
        - "traefik.docker.network=proxy"
  front:
    image: patientplatypus/lowtechfront:latest
    ports: 
      - '3000:3000'
    networks:
      - proxy
      - default
    depends_on:
      - back
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
        max_attempts: 5
        window: 120s
      labels:
        - "traefik.docker.backend=front"
        - "traefik.port=3000"
        - "traefik.frontend.rule=Host:104.236.214.151, lowteck.com, www.lowteck.com, zennify.me"
        - "traefik.docker.network=proxy"

Encore une fois, je suis dans ce domaine depuis un moment et je n’ai essentiellement aucun code d’erreur sur lequel continuer. Si quelqu'un a des conseils, faites-le moi savoir.

EDIT:

J'ai trouvé une erreur après avoir déconnecté le pod traefik, à savoir qu'il me fallait:

[[acme.domains]]
  main = "lowteck.com"
  sans = ["www.lowteck.com", "back.lowteck.com"]

Cependant, le problème https n’a pas été résolu, bien que les journaux soient maintenant clairs pour le conteneur traefik. Vous pouvez voir la sortie complète du journal ici:

source placée ici