問題タブ [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.

0 投票する
3 に答える
1237 参照

docker - docker-compose ファイル内の env var としてランダムなサービス ポートを取得および設定する方法は?

docker-compose.yml の例を次に示します。

サービスのランダムなポートを取得し、次のurlように env 変数内に設定したいと思います。

url: "http://ghost.localhost:{{.Service.Port}}"

最終的な目標は、ポートを手動で設定せずに複数のスタックをデプロイすることです。

docker stack deploy --compose-file=docker-compose.yml ghost1
docker stack deploy --compose-file=docker-compose.yml ghost2
docker stack deploy --compose-file=docker-compose.yml ghost3

それが可能だ ?

0 投票する
2 に答える
6160 参照

docker - docker stack によるボリュームのマウント

以下は私の docker-stack ファイルです。

私のマシンでは問題なく動作し、証明書フォルダーをコンテナー内の証明書にバインドします。ただし、このサービスを docker-stack-node イメージ内にデプロイしている CI パイプラインでは機能しません。私が得るエラーは

タイプ「バインド」の無効なマウント構成: バインド マウント ソース パスが存在しません。

ホスト パスをサービスのコンテナーにバインド マウントする場合、パスはすべての swarm ノードに存在する必要があることを読みました。したがって、名前付きボリュームを作成する必要があると思います。ただし、名前付きボリュームでは、証明書のソース パスを指定できません。ややこしい。誰かがこれを手伝ってくれますか?

0 投票する
2 に答える
4289 参照

docker - 許可拒否エラーのために拒否された Docker スタック タスク

コマンドを使用してスタック (1 つのサービスを含む) をデプロイし、docker stack deployswarm でアプリケーションから 2 つのインスタンスを実行しようとしました! これが私のdocker-composeファイルです:

コマンドを実行した後sudo docker stack deploy -c ./docker-compose.yml ts、スタックは swarm に正常にデプロイされましたが、docker stack ps ts 出力は次のとおりです。

完全なエラー メッセージはmkdir /var/lib/docker: permission denied です。

docker service createもう 1 つの問題は、コマンド サービスをデプロイして正常に実行しているスタックを作成しようとしたときに、ローカルホストからサービスにアクセスできないことです。2 つの質問があります。

  1. Compose ファイルからスタックをデプロイする際の問題と、なぜmkdir /var/lib/docker: permission deniedエラーが発生するのですか?
  2. ホストからアクセスできるようにサービスネットワークを構成する方法は?