日本語

開発者ツール · Docker run から Docker compose コンバーター

一部の docker run フラグに同等の Compose がない理由: -d、--rm、-it

· 背景

ドッカー 作成 開発者ワークフロー

一部の docker run フラグに同等の compose がない理由を示す抽象的な図: -d、--rm、-it
オリジナル ToolAcre ベクトル イラスト

一部のフラグは、サービスの構成方法ではなく、コンテナーを 1 回呼び出す方法を説明します。この投稿では、その区別と、Compose における -d、--rm、-it およびその仲間に何が起こるかを説明します。

-d がなくなりました — 変換されたサービス定義にはデタッチ設定がないため、何かが失われたのではないかと思われます

-d がなくなっています。変換されたサービス定義にはデタッチ設定がないため、何かが失われたのではないかと思います。証拠: -d は呼び出しの意図を記録しますが、サービス キーの代わりにメモを発行します。使い捨てリテラルを使用して呼び出しマッピングを再現します。各ソースの出現を stdin_open tty 通知と組み合わせます。 CLI ライフサイクルの選択肢を宛先レビュー用に予約します。

この開発者ワークフローの開発者ワークフロー インシデント この開発者ワークフロー セクション セクション この開発者ワークフロー セクション この開発者ワークフロー セクションの開発者 この開発者ワークフロー セクション ワークフロー セクション この開発者 この開発者ワークフロー セクション 開発者ワークフロー セクション この開発者ワークフロー セクションのワークフロー セクション また、別の開発者ワークフロー インシデント境界が、対話型ブール値が compose exec と run の間で選択しないことであることも明らかにします。証拠: リポジトリは、より広範な実行時または歴史的な証拠を提供しません。この呼び出しマッピング制約は停止点です。製造時の動作を含めずに stdin_open tty 通知を検査し、CLI ライフサイクルの選択に関するホスト チェックを文書化します。

呼び出しと構成 — Compose ファイルはサービスを記述します。開始方法は docker compose に属します

呼び出しと構成 — Compose ファイルはサービスを記述します。開始方法は docker compose に属します。証拠: 永続的な構成と呼び出しの選択では、異なるサーフェスが使用されます。呼び出しマッピング トークンを stdin_open tty 通知にトレースします。順序付けされた値を最終値フィールドから分離します。 CLI ライフサイクルの選択は収集の外にあります。

関連する開発者ワークフロー メカニズムの境界は次のとおりです。別の開発者ワークフローの文法境界は、--platform マップである一方で、--pull と --quiet は明示的な警告のままです。証拠: --platform は --pull と --quit は明示的な警告のままですがマップします。この呼び出しマッピング ファクトを使用して、stdin_open tty 通知内の 1 つのメンバーまたはスカラーを予測します。 CLI ライフサイクルの選択について決定する前に、警告を確認してください。

-d および --rm — docker compose up -d および docker compose run --rm に置き換えられます。これらはキーではなくコマンドです。

-d および --rm — docker compose up -d および docker compose run --rm に置き換えられます。これらはキーではなくコマンドです。証拠: --rm は、-i と -t が stdin_open と tty にマップされている間、表現できないものとして警告します。呼び出しマッピングのシリアル化をそのモデルから判断します。 stdin_open tty 通知での引用符は型を保護しますが、CLI ライフサイクルの選択に対する動作上の証拠は提供しません。

2 番目の開発者ワークフローのシリアル化の観察は、別個の開発者ワークフローの出力境界は、削除には CLI の選択が必要である一方で、ubuntu bash はコマンドとターミナルの設定を保持するということです。証拠: ubuntu bash はコマンドとターミナルの設定を保持しますが、削除には CLI の選択が必要です。この呼び出しマッピング出力は、設定を使用できないコンテキストから分離します。 stdin_open tty 通知を確認できるようにし、CLI ライフサイクルの選択を個別に確認します。

-i および -t — stdin_open: および tty: は存在しますが、対話型セッションは通常 docker compose exec または run になります。

-i および -t — stdin_open: および tty: は存在しますが、対話型セッションは通常、代わりに docker compose exec または run になります。証拠: インタラクティブなブール値は、compose exec と run のどちらかを選択しません。推測するのではなく、呼び出しマッピング例外で停止してください。 stdin_open tty 通知に近い追加には、CLI ライフサイクルの選択に関連付けられたデプロイメント固有の理由が必要です。

もう 1 つの開発者ワークフロー例外制約は、Swarm デプロイと Kubernetes 同等のものが発行されないことです。証拠: Swarm デプロイと Kubernetes に相当するものは生成されません。元の呼び出しマッピング コマンドは警告の横に保持してください。この比較により、stdin_open tty 通知に含まれる内容と、どの CLI ライフサイクル選択の決定が手動のままであるかがわかります。

--pull はサポートされていないと警告され、--platform は直接マップされ、--quiet は CLI のみの警告です

--pull、--platform、および --quiet — 仕様にキー (pull_policy、platform) がある場合とキーがない場合。証拠: --pull と --quit は明示的な警告のままですが、 --platform はマップします。 --pull はサポートされていないと警告され、--platform は直接マップされ、--quiet は CLI のみの警告です。合成名から呼び出しマッピングの例を構築します。実稼働 CLI ライフサイクル選択の詳細を公開せずに、すべての stdin_open tty 通知項目を追跡可能にします。

同じ開発者ワークフロー サンプル サンプルは、この開発者ワークフロー セクションについて、この開発者ワークフロー セクションのコマンドと警告を、この候補ファイルの横にオリジナルで保持することを示しています。ペアの呼び出しマッピング ファクトは、stdin_open tty 通知に表示される必要があります。その行を記録し、CLI ライフサイクルの選択に関する思い込みを避けてください。

動作した例: docker run -d --rm -it ubuntu bash の変換 — マップ、ドロップされるもの、および同等のものを実行する方法

動作した例: docker run -d --rm -it ubuntu bash の変換 — マップ、ドロップされるもの、および同等のものを実行する方法。呼び出しマッピングの結果を 1 つの観察可能な stdin_open tty に変換すると、違いがわかります。 Docker は、後の CLI ライフサイクル選択の判定を所有します。

開発者ワークフローの結果の実装では、別の開発者ワークフローの影響境界として、-d は呼び出し意図を記録しますが、サービス キーの代わりにメモを発行することも示されています。呼び出しマッピングの責任を分割します。変換は stdin_open tty 通知を書き込み、リポジトリはシークレットを削除し、オペレーターは CLI ライフサイクルの選択を検証します。

これでカバーされないもの — Swarm のみのデプロイ: オプションと Kubernetes の同等物

これでカバーされないもの — Swarm のみのデプロイ: オプションと Kubernetes の同等物。呼び出しマッピングの範囲を、ここに示す stdin_open tty 通知ブランチに制限します。隣接するフォームとデフォルトでは、CLI ライフサイクルの選択に関する質問に答えることができません。

もう 1 つの開発者ワークフロー スコープ制限は、「別個の開発者ワークフロー制限境界」に続き、永続的な構成と呼び出しの選択肢が異なるサーフェスを使用するというものです。この呼び出しマッピング境界を除外として扱います。 CLI ライフサイクルの選択についての推測よりも、正確な stdin_open tty 通知を優先します。

要点: ドロップされたフラグは通常、呼び出しフラグです — バグを想定する前に、このリストに対してコンバーターの出力をチェックしてください

要点: ドロップされたフラグは通常、呼び出しフラグです。バグを想定する前に、このリストに対してコンバーターの出力をチェックしてください。証拠: 警告は省略を説明するものであるため、YAML を伴う必要があります。ソース オプション、モデル フィールド、stdin_open tty 通知行および警告としての呼び出しマッピングを監査します。 CLI ライフサイクルの選択を確認する前に、シークレットを削除してください。

最後に、開発者ワークフローのテイクアウェイ ソースは、-i と -t が stdin_open と tty にマップされる間、--rm が表現不可能であると警告することを、開発者ワークフローの別の決定境界として確認します。呼び出しマッピングを狭い範囲で閉じる: stdin_open tty が候補であることを通知します。 CLI ライフサイクルの選択とシェルの同等性は保証されません。