Traefik Proxyでアクセスできない

Traefik プロキシで Discourse を実行することについての多くの投稿を読みましたが、残念ながらまだ何かを見落としているようです。

ホストからコンテナの内部 IP を curl すると、Discourse セットアップウィザードの HTML が返され、Traefik はサービスが利用可能であることを報告します。

しかし、Traefik を経由するドメインに接続しようとすると、期待どおりの HTTPS 証明書が表示されますが、数秒後に 504 エラーが発生します。

以下は Discourse の設定です。

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"

expose:
  #- "80:80"   # http
  #- "443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

env:
  LC_ALL: en_US.UTF-8
  LANG: en_US.UTF-8
  LANGUAGE: en_US.UTF-8

  DISCOURSE_HOSTNAME: 'redacted'
  DISCOURSE_DEVELOPER_EMAILS: 'redacted'

  DISCOURSE_SMTP_ADDRESS: smtp.postmarkapp.com
  DISCOURSE_SMTP_USER_NAME: redacted
  DISCOURSE_SMTP_PASSWORD: redacted
  DISCOURSE_NOTIFICATION_EMAIL: noreply@redacted

## Docker container is stateless; all data is stored in /shared
volumes:
  - volume:
      host: /opt/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /opt/discourse/shared/standalone/log/var-log
      guest: /var/log

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git

docker_args:
  - "-l traefik.enable=true"
  - "-l traefik.http.routers.discourse.tls=true"
  - "-l traefik.http.routers.discourse.rule=Host(`redacted`)"
  - "-l traefik.http.routers.discourse.entrypoints=websecure"
  - "-l traefik.http.routers.discourse.tls.certresolver=ledns"
  - "-l traefik.http.services.discourse.loadbalancer.server.port=80"
  - "-l traefik.http.services.discourse.loadbalancer.server.scheme=http"

run:
  - exec: echo "Beginning of custom commands"
  - exec: echo "End of custom commands"

同じ Traefik インスタンスで、異なるホストで同様に設定された他の多くのサービスはすべて正常に動作しています。

Discourse の nginx アクセスログでは、ローカル IP を curl したときの要求は確認できますが、ドメインを curl したときの要求は確認できません。

何か不足している点について、何か提案はありますか? Traefik と nginx の間でどこかで失われているようです。

問題を見つけました。TraefikとDiscourseが異なるDockerネットワーク上にありました。同じネットワークに配置するDockerフラグを追加することで問題が解決しました。

「いいね!」 2

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.