通常は、最初に Dockerfile ファイルを定義し、次に docker build コマンドを使用してイメージ ファイルをビルドします。次に、docker run を通じてイメージ ファイルに基づいてコンテナ インスタンスを起動できます。 次に、コンテナを起動するときに、イメージ ファイル内のいくつかのパラメータを変更できます。イメージ ファイル内のこれらのパラメータは、多くの場合、Dockerfile ファイルによって定義されます。 ただし、コンテナの起動時に Dockerfile ファイル内のすべての定義を再定義できるわけではありません。 docker run で上書きできない Dockerfile の命令は次のとおりです。
1. ENTRYPOINT命令を上書きする Dockerfile ファイル内の ENTRYPOINT 命令は、コンテナの起動後にデフォルトのエントリ ポイントを指定するために使用されます。
2. CMDコマンドを上書きする Dockerfile ファイル内の CMD 命令は、コンテナの起動後に実行されるデフォルトの命令を指定します。 コンテナを起動するときに、docker run の新しいコマンド オプションを設定して、Dockerfile ファイル内の CMD 命令を上書きすることができます (Dockerfile ファイル内の CMD 命令は参照されなくなります)。次に例を示します。
ENTRYPOINT 命令も Dockerfile ファイルで宣言されている場合、上記の命令は ENTRYPOINT 命令にパラメータとして追加されます。 3. EXPOSE命令をオーバーライドする Dockerfile ファイル内の EXPOSE 命令は、コンテナが配置されているホストのポートを予約するために使用されます。 どうやらこれはランタイム コンテナの機能なので、docker run はその命令を便利にオーバーライドできます。次に例を示します。
4. ENVディレクティブをオーバーライドする Dockerfile ファイル内の ENV 命令は、コンテナ内の環境変数を設定するために使用されます。 コンテナを起動すると、コンテナに対して次の環境変数が自動的に設定されます。
docker run はこの命令を便利に上書きできます。次に例を示します。 -x HOME="/" を宣言します 宣言 -x ホスト名="85bc26a0e200" -x OLDPWDを宣言する -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" を宣言します。 -x PWD="/" を宣言します -x SHLVL="1" を宣言します -x deep="purple" を宣言します スクリプトによる環境変数の設定または上書き 5. VOLUME命令をオーバーライドする Dockerfile 内の VOLUME 命令は、コンテナのデータ ボリュームを設定するために使用されます。
6. USERコマンドを上書きする コンテナ内のデフォルト ユーザーは root (uid=0) です。
Docker run は、次の形式の -u をサポートしています。
7. WORKDIRディレクティブをオーバーライドする Dockerfile ファイル内の WORKDIR 命令は、後続の命令の作業ディレクトリを設定するために使用されます。 パスが存在しない場合は、後続の命令で使用されなくても作成されます。 1つには、複数のWORKDIRが存在できます。相対パスの場合、後続の命令は前の命令から継承されます。 WORKDIR では、以前に定義された環境変数を参照できます。
参考リンク: https://docs.docker.com/engine/reference/run/ https://docs.docker.com/engine/reference/builder/ 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
<<: JavaScript でカウントダウン効果を実装する
>>: ドロップダウンメニュー効果を実現するJavaScript
目次リナックス1. SWAPとは2. swappiness は何を調節しますか? 3. スワップ操作...
序文プロジェクトの要件は、ユーザーの現在の位置が特定の地理的位置範囲内にあるかどうかを判断することで...
時間フィールドは、データベースの使用時によく使用されます。よく使われるのは作成時間と更新時間です。し...
MySQL を学習すると、インストール後にいくつかのデフォルトのデータベースが付属していることに気付...
Linux で新たに発見された sudo の脆弱性を悪用すると、特定のユーザーが root としてコ...
1. Nginxのインストール手順1.1 公式サイトの紹介http://nginx.org/en/d...
この記事の目的は、これらの概念とその機能の関係を明らかにすることです。 Mysql がトランザクショ...
類似の構造:コードをコピーコードは次のとおりです。 <div></div>&...
目次質問: ボタンをクリックすると、スパンの色が赤に変わりますか?上記の問題を分析します。 2番目の...
Web ページを設計する過程で、デザイナーが間違いを犯すのは必然です。特に新人は、新しいアイデアを実...
十分に最適化されていない、またはパフォーマンスが極端に低い SQL ステートメントに直面した場合、通...
概要リレーショナル データベースでは、インデックスは、データベース テーブル内の 1 つ以上の列の値...
easyui フレームワークのコードは次のとおりです。 css: .ファイルボックス{ フロート:...
MySQL でテーブルを削除するのは非常に簡単ですが、削除コマンドを実行するとすべてのデータが消えて...
新しいserver.jsを作成する糸初期化 -y 糸を追加エクスプレスノードモン -D var ex...