Docker Swarm + Traefik + Nginx / Nextcloud + DuckDNS - PullRequest
0 голосов
/ 05 июля 2019

Я настраиваю док-рой на три RPI 3b + и пытаюсь заставить работать traefik реверс и nextcloud или для тестирования nginx.Но услуга не является общедоступной.Я пробовал это в течение двух недель, и я схожу с ума.Я надеюсь, что кто-нибудь может мне помочь.Я получаю код состояния 302 на информационной панели traefik.Все службы работают нормально по внутреннему IP

Мой traefik.yml:

version: "3.2"
services:     
traefik:
image: traefik    
 command: --api  --web --docker --docker.swarmMode --docker.watch --logLevel=DEBUG    
 ports:
  - 80:80
  - 443:443
  - 8080:8080    
 environment:
  - DUCKDNS_TOKEN=myduckdnstoken   
 volumes:
  - /var/run/docker.sock:/var/run/docker.sock:ro
  - /media/hdd/data/runtime/traefik:/etc/traefik
  - /media/hdd/data/runtime/traefik/traefik.toml:/traefik.toml:ro
  - /media/hdd/data/runtime/traefik/acme.json:/acme.json
 networks:
  - traefik_public    
 deploy:
  labels:
    - "traefik.enable=false"
    - "traefik.docker.network=traefik_public"
  mode: global
  placement:
    constraints: [node.role == manager]
  restart_policy:
    condition: on-failure
networks:  
  traefik_public:    
    external: true

Мой traefik.toml:

checkNewVersion = true
defaultEntryPoints = ["http", "https"]

[web] 
watch = true
address = ":8080"
caServer = "https://acme-staging-v02.api.letsencrypt.org/directory"
email = "myemail@email.com"
storage = "acme.json"
entryPoint = "https"
acmeLogging = false
onDemand = true
OnHostRule = true
  [acme.dnsChallenge]
     provider = "duckdns"
     delayBeforeCheck = 300
[[acme.domains]]
   main = "mysubdomain.duckdns.org"
[[acme.domains]]
   main = "*.mysubdomain.duckdns.org"

[entryPoints]
  [entryPoints.http]
  address = ":80"
  [entryPoints.http.redirect]
    entryPoint = "https"
  [entryPoints.https]
  address = ":443"
   [entryPoints.https.tls]

[docker]
endpoint = "unix://var/run/docker.sock"
domain = "mysubdomain.duckdns.org"
watch = true
swarmMode = true
exposedbydefault = false

и мой nginx.yml

 version: "3.7"

 services:
  nginx:
   image: nginx
   networks:
    - traefik_public
   ports:
    - 81:80
   deploy:
    labels:
     - "traefik.enabled=true"
     - "traefik.backend=nginx"
     - "traefik.frontend.rule=Host:nginx.mysubdomain.duckdns.org"
     - "traefik.docker.network=traefik_public"
     - "traefik.port=81"
     - "traefik.frontend=nginx"
 networks:
  traefik_public:
   external: true

Я очень благодарен, если кто-нибудь может мне помочь.

...