Traefikはコンテナにアクセスできません

Traefikはコンテナにアクセスできません

私は何日もこの問題を解決しようとしていますが、理解できず、インターネットでも役立つ情報が何も見つかりませんでした。そのため、あらゆるヒントをいただければ大変ありがたく思います。

数週間前、新しい Ubuntu 16.04.4 LTS サーバーをセットアップしました。docker をインストールし、社内 Web ページを実行しました。これで Web ページが 1 つ追加され、2 つの異なるサブドメインでアクセスできるようにしたいと考えています。

  • 翻訳元
  • 翻訳元

このため、私はドメイン qwert.de を購入し、プロバイダーに固定 IP アドレスを要求しました。これで、私のサーバーはドメイン qwert.de 経由でアクセスできるようになりました。

その後、私のニーズをほぼすべて満たす traefik を見つけました。そこで、次の設定でインストールしました。

debug = false

logLevel = "ERROR"
defaultEntryPoints = ["https","http"]

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

[retry]

[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "qwert.de"
watch = true
exposedbydefault = false

[acme]
email = "[email protected]"
storage = "acme.json"
entryPoint = "https"
OnHostRule = true
[acme.httpChallenge]
entryPoint = "http"

次に、次の docker-compose コマンドでコンテナを起動しました。

version: '2'

services:
  traefik:
    image: traefik:latest
    restart: always
    ports:
      - 80:80
      - 443:443
    networks:
      - web
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /srv/docker/traefik/traefik.toml:/traefik.toml
      - /srv/docker/traefik/acme.json:/acme.json
    container_name: traefik

networks:
  web:
    external: true 

すべて正常に動作し、traefik の典型的な「404 ページが見つかりません」というメッセージが表示されました。その後、次のコードを使用して基本的な nginx コンテナーを起動します。

sudo docker run -d --label "traefik.frontend.rule=HOST:appone.qwert.ch" --network web nginx:latest

しかし、Web サイト appone.qwert.ch を呼び出そうとすると、典型的な「404 ページが見つかりません」というメッセージが表示されます。traefik コンテナーは次のエラー メッセージをスローします。

level:error msg="Error creating route for frontend frontend-HOST-qwert-de-0: error parsing rule: error parsing rule: 'HOST:qwert.de'. Unknown function: 'HOST'"

何らかの方法でサーバーを新しいドメインで構成する必要があるのか​​、それとも何を間違えたのかわかりません。

私の /etc/hosts/ ファイルは次のようになります。

127.0.0.1       qwert.de  Linux-Server
127.0.1.1       Linux-Server
212.153.72.45   qwert.de Linux-Server

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

どのような返信でも本当に感謝いたします。

答え1

ここで使用するのはホストの代わりにホスト

-l "traefik.frontend.rule=ホスト:appone.qwert.ch"

関連情報