問題タブ [docker-stack]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - Docker: デフォルト ゲートウェイ設定を制御/定義する方法
Docker Compose YML ファイルとは何かを明らかにできる人はいますか? 私がやりたいことは、さまざまなコンテナーの IP アドレスを制御できるようにすることだけです。バージョン 3.1 を使用しています (ただし、最近バージョン 17.06 にアップグレードしたため、3.3 も試しました)。ドキュメントには次のように記載されています。
これを行う場合、ネットワークを検査するときにそのサブネットを尊重する必要があります。ただし、ゲートウェイは完全に異なる [注: 上記を読む]ため、コンテナーは起動しません。バージョン 2 で機能していた機能がバージョン 3 で(現時点で)失われたのはなぜですか? さらに悪いことに、それがバージョン 3.2 または 3.3 で復元されなかったのはなぜですか?
多分私はここでベースから外れています - 確かに初めてではありません! 私にとって最も重要なことは、構成ファイルを変更して、使用するゲートウェイとサブネットを制御するdocker stack deploy
コマンド ( 内) を許可する方法はありますか?Docker Swarm
docker - Docker スタックから Kubernetes へ
Docker には精通していますが、Kubernetes の経験はありません。
Docker swarm クラスターにデプロイできるDocker スタック(マルチコンテナー) ソフトウェアがあります。Kubernetes に似たようなものがあるかどうか疑問に思っていましたか? レプリカや自動スケーリングなどは必要ありません...必要なのは、単一のテキスト ファイルで定義された依存関係とネットワークと共に動作するコンテナーのグループだけです。
Docker スタック ファイルを Kubernetes 構文に変換するkomposeというツールを検索して見つけましたが、出力は*.yaml
単一のファイルではなく、ファイルのリストのようです。
そのため、kubernetes にはこの正確な機能がないという結論に達しました。何か不足していますか?
docker - 構成ファイルは同じだがポートが異なる複数の docker スタック
同じ構成ファイルを使用して、マルチコンテナー アプリケーションの複数のインスタンスを同時に実行したいと考えています。アプリケーション内のコンテナーの 1 つは、特定のポートで websocket を受け入れます。
さまざまなドメインまたは場所をアプリケーションのさまざまなインスタンスに転送する nginx プロキシがあります。インスタンスは、実際にはアプリケーションを使用する異なるテナントです。
私は単に実行できるようにしたい:
そして、どうにかしてアプリへのさまざまなポートを取得し、それをプロキシで使用して、場所または仮想ホストを使用して、さまざまな WebSocket 接続をさまざまなアプリケーション インスタンスに転送できます。
したがって、次のいずれかです。
これを行うようにプロキシを構成する方法は、確実に理解できます。https://github.com/jwilder/nginx-proxyについて少し読み始めました。ただし、各アプリ インスタンスの環境変数として仮想ホスト名を設定する必要があり、docker stack deploy コマンドで引数を渡す方法が見つからないようです。
理想的には、正確なポートを気にせず、むしろランダムにしたいと思います。ただし、転送できるようにするには、何らかの方法で nginx プロキシに認識させる必要があります。新しい appinstance (テナント) スタックを簡単にスピンアップして、その名前のプロキシをセットアップできるようにしたい (または、プロキシがアプリの名前付けで自動的に処理できる場合はさらに良い)。
サブドメイン/新しいドメインを作成せずにテストと開発が可能になるため、上記の両方の例 (仮想ホストと場所の両方) が機能する場合はボーナスです。
提案?
nginx - docker stack deploy は正常に動作していませんが、docker-compose は正常に動作しています
docker swarm と docker compose は初めてです。
nginx とフラスコの docker コンテナーを使用するアプリケーションを作成しました。nginx はリバース プロキシとして機能します。
docker compose を使用してこのアプリケーション全体を構築すると、すべて正常に動作します
私の docker-compose.yml ファイル
以下は私の出力です:
ただし、3 つの AWS インスタンスにデプロイして、次のレベルに引き上げたいと考えています。
ここに私のdocker-stack.ymlファイルがあります
しかし、このアプリケーションをデプロイして URL を確認すると、これが表示されます
【間違ったホームページ】
最初のケースでは Web コンテナーと nginx コンテナーの間で通信が行われたが、2 番目のケースではこの通信が停止した理由がわかりません。
誰でもこれについて私を案内してもらえますか
更新 1:
nginx サービス ログを見ると、
docker - docker stack deploy でネットワーク生成を無効にする方法
次の方法で構成ファイルをUCPにデプロイしています。
最後に、appsnetwork などの 1 つの docker ネットワークに複数の構成ファイル (各構成ファイルには個別のマイクロサービスのセットアップが記述されています) をデプロイしたいと考えています。
このdocker stack deploy
コマンドは、custom-stack-name_appsnetwork のような生成された名前で新しいネットワークを自動的に作成します。
私のオプションは何ですか?