Die Synchronisierung der Web-GUI ist beim Proxying über Nginx auf Docker unterbrochen

Die Synchronisierung der Web-GUI ist beim Proxying über Nginx auf Docker unterbrochen

Ich möchte Syncthing mithilfe von Docker auf meinem Ubuntu 18.04-Server bereitstellen.

Ich verwende nginx als Reverse-Proxy, sodass der WebGUI-Verkehr über SSL unter Verwendung meines Zertifikats läuft. Wenn ich jedoch die WebGUI öffne, während sie über nginx geproxied wird, sieht sie so aushttps://i.stack.imgur.com/UdhYO.png

Ich habe bei Google eine einzige weitere Person mit diesem Problem gefunden und keine Lösung gefunden … Weiß jemand, was los ist?

Meine docker-compose.yml:

version: '3'

services:

  nginx:
    image: nginx:latest
    container_name: nginx-1
    networks:
      - syncthing
    ports:
      - "80:80"
      - "443:443"
    restart: always
    volumes:
      - ./www:/var/www
      - ./nginx/:/etc/nginx
      - ./nginx/log:/var/log/nginx
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/tmp/docker.sock:ro
    command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"

  syncthing:
    image: linuxserver/syncthing
    container_name: syncthing-1
    networks:
      - syncthing
    ports:
        #webUI 
      - 8384:8384
        #listening  
      - 22000:22000
        #port discovery
      - 21027:21027/udp
    restart: always
    volumes:
      - ./syncthing/config:/config
      - ./syncthing/data:/data
    environment:
      - TZ=CET

  letsencrypt:
    image: certbot/certbot
    command: renew
    container_name: letsencrypt-1
    networks:
      - le
    depends_on:
      - nginx
    restart: always
    volumes:
      - ./letsencrypt:/etc/letsencrypt
      - ./letsencrypt/log:/var/log/letsencrypt
      - /etc/localtime:/etc/localtime:ro
      - /var/run/docker.sock:/var/run/docker.sock:ro
    entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"


networks:
  syncthing:

Und meine für die Synchronisierung von Nginx-Sites aktivierte Datei:

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    server_name example.com;
    root /;

    # SSL
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;

    # reverse proxy
    location /syncthing {
        proxy_pass http://syncthing:8384;

        proxy_read_timeout      600s;
        proxy_send_timeout      600s;    

        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;
    }
}

# HTTP redirect
server {
    listen 80;
    listen [::]:80;

    server_name example.com;

    location / {
        return 301 https://example.com$request_uri;
    }
}

verwandte Informationen