Docker Swarm構成があり、そこに2つのスタック(main
およびmon
)をデプロイしました。1つのスタックでポートを公開し、別のスタックからポートを参照できます。しかし、私はそれを行わない方法を見つけようとしていましたが、代わりに127.0.0.11 DNSを使用してアクセスできるようにしました。
mon
にgrafana
というサービスがあります
https://docs.docker.com/docker-cloud/apps/service-links/#discovering-services-or-containers-on-another-stack を使用すると、スタックを使用できることが示されます参照する名前が機能しませんでしたping grafana.mon
無効なホスト名を返しました。
これを行うには、同じネットワークを使用するだけで、それらが表示されます。私の場合、public
というネットワークを定義しました。これは、すべてのスタックによって外部から参照されます
docker network create -d overlay --attachable public
そこから私が持っているdocker-compose.ymlファイルで
networks:
public:
external:
name: public
アクセスするには、サービス名を使用します。