構文の構成: 1 注釈情報 .dockerignore ファイル - 各行に無視ファイルを定義します ............................................................. Dockerfile の一般的な指示: 1 FROM ---ベースイメージを指定する ベースイメージが存在しない場合は、次の形式を使用して Docker Hub からプルされます。 2 MAINTANIER -- Dockerfileを提供する作成者は個人情報を提供する [徐々に放棄される] 使用する形式:
.............................................................. 3 コピー - ホストマシン内のファイルをイメージにコピーします。 ファイルはDockerfileの作業ディレクトリにある必要があります 空白文字で区切られた文字列は "" で区切る必要があります。そうしないと、2 つのファイルとして扱われます。 ファイルコピーのガイドライン: 4 ADD - COPYコマンドに類似 URL パスをサポート ---- ネットワークにアクセスできる場合は、ネットワークにアクセスしてローカルにダウンロードし、イメージにパッケージ化します。 操作ガイドライン: 2 圧縮パッケージの場合は解凍されますが、URLパスで取得したtarファイルは展開されません 3 src が複数ある場合、またはワイルドカードが直接的または間接的に使用されている場合、dest は / で終わるディレクトリ パスである必要があります。dest が / で終わらない場合は、通常のファイルと見なされます。 ............................................................... 5 WORKDIR --作業ディレクトリを指定する 毎回、この命令の後続の命令にのみ影響します
ワークディレクトリ /usr/local/src/ nginx-1.14.2.tar.gz ./ を追加します --影響を受けます ............................................................. 6巻 Docker によって管理されるボリュームのみを定義できます。 実行すると、ホスト ディレクトリの下にボリューム ディレクトリがランダムに生成されます。 7 EXPOSE コンテナが外部と通信できるように指定されたリスニングポートを開きます 使用する形式: プロトコルが指定されていない場合、デフォルト値は TCP になります。 ここで指定されたポートを公開するには、-P オプションを使用してください。 8 環境 イメージに必要な環境変数を定義するために使用され、Dockerfileファイル内の他のコマンドによって呼び出すことができます。 通話形式: ENV <キー> <値> 最初の形式では、キーの後のすべてが <value> の一部と見なされます。したがって、一度に設定できる変数は 1 つだけです。 2番目の形式は、一度に複数の変数を設定するために使用できます。各変数は<key>=<value>です。 複数の変数を定義する場合。すべての機能を同じレイヤーで完了するには、2 番目の方法をお勧めします。具体的な使用法: ENV A /web/html index.html をコピー ${A:-/web/html} docker run で変数を渡す: printenv -- 環境変数情報を出力する .............................................................. 9 RUNコマンド: 使用する形式: 最初の形式では、<command コマンドは通常シェル コマンドであり、"/bin/sh -c"> として実行されます。これは、コンテナー内のこのプロセスの PID が 1 になることができず、Unix シグナルを受信できないことを意味します。したがって、docker stop コマンドを使用してコンテナーを停止すると、このプロセスはシグナルを受信しません。 2番目の構文形式のパラメータはJSON形式の配列であり、<executable>は実行するコマンドであり、次の ........................................................................ 10 CMDコマンド: docker runで実行 文法の書き方には3つの方法がある
2. CMD ["param1","param2"]
二重引用符のみ! CMD ["パラメータ1","パラメータ2"] スクリプトを実行するために使用できます: run_tomcat.sh を追加します /apps/tomcat/bin/run_tomcat.sh chmod +x /apps/tomcat/bin/run_tomcat.sh を実行します。 chown -R tomcat:tomcat /apps /data/tomcat を実行します。 CMD ["/apps/tomcat/bin/run_tomcat.sh"] -- スクリプトを参照してください。 .............................................................. 11 エントリーポイント CMD命令に似た関数は、コンテナのデフォルトの実行プログラムを指定するために使用され、コンテナを別の実行可能プログラムのようにする。 CND とは異なり、この命令で起動されたプログラムは docker run コマンドラインで指定されたパラメータによって上書きされません。また、これらのコマンドラインパラメータは ENTRYPOINT で指定されたプログラムにパラメータとして渡されます。 使用する形式:
docker runコマンドに渡されたコマンドパラメータは、CMDで指定されENTRYPOINTに追加された内容を上書きします。 Dockerfile ファイルにはこのような命令が複数ある場合がありますが、最後の命令のみが有効になります。 docker run を実行する場合、--entrypoint 文字列オプションを使用して渡されたコマンドは、Dockerfile で定義された ENTRYPOINT 命令をオーバーライドできます。 Nginx 設定ファイルがパラメータを受け取れるようにする方法 スクリプトを作成します。
Dockerファイル:
注意: 二重引用符が必要です。 ! ! 12 ユーザーコマンド: イメージの実行時またはDockerfileの実行時にRUN、CMD、またはENTRYPOINTを指定するために使用されます。 デフォルトでは、コンテナは root として実行されます。 形式: <UID> は任意の番号にすることができますが、実際には /etc/passwd 内のユーザーの有効な番号である必要があります。 コンテナ内の/etc/passwdファイルに存在する必要があります ................................................................................................ 13 健康チェック 健康状態のモニタリング 一般的なオプション: 応答値: アプリケーション例:
Dockerfile 内のアプリケーション:
docker run でも定義できます:
.............................................................. 14 SHELLコマンド:
............................................................. 15 STOPSIGNALコマンド: STOPSIGNAL 信号名 停止コマンドの信号を定義します。 SIGKILL --9 シグナル ............................................................. 16 ARGパラメータ: dockerビルドプロセスで使用される --build-arg によってパラメータとして渡すことができます。
docker ビルド中に dockerfile 内の arg 変数が --build-arg 変数で設定されている場合、コマンドライン インターフェイスの変数値が最終値になります。 17 オンビルド Dockerfileでトリガーを定義するために使用します ビルド プロセス中に次の Dockerfile の from 指定が実行されると、ONBUILD で指定されたトリガーがトリガーされ、そのベース イメージの Dockerfile ファイルが作成されます。 形式: 任意のコマンドをトリガー コマンドとして登録できますが、ONBUILD はそれ自体の中にネストすることはできず、メンテナー コマンドからトリガーされることもありません。 onbuildディレクティブを含むDockerfileを使用して構築されたイメージは、ruby:2.0-onbuildなどの特別なタグを使用する必要があります。 指定されたソース ファイルが見つからない場合、ビルド プロセス コンテキストが失敗するため、onbuild ディレクティブで add または copy ディレクティブを使用する場合は、細心の注意を払ってください。 他の人がこの画像を参照すると実行されます!最初のビルドプロセスでは実行されません 以下もご興味があるかもしれません:
|
<<: mysql 5.7.18 winx64 無料インストール設定方法
>>: Windows10にmysql5.7.18をインストールするチュートリアル
トレーニングのための一連のプロジェクト反応+ts内容は少ないですが、フックのカプセル化、ts ジェネ...
Nginx の公式 Web サイトから Windows バージョンの Nginx をダウンロードしま...
wgetコマンドを使用して、親ディレクトリの下のサブディレクトリ全体をダウンロードします。親ディレク...
1. データベースのタイムゾーンを確認する '%time_zone' のような変数を...
Web ページの読み込み速度は、Web サイトの品質を評価するための重要な指標です。その理由は、ほと...
WeChat ミニプログラム コンポーネント設計仕様コンポーネントベースの開発という考え方は、私の開...
コンテナ内でコマンドを実行したいが、コンテナに入りたくない場合があります。ではどうすればいいでしょう...
1. コマンドの紹介userdel (ユーザー削除) コマンドは、ユーザー アカウントと関連ファイル...
ゲームのソースコードのダウンロードアドレスを取得するためのJavaScript:クリックしてソースコ...
Sysbench は、MySQL データベース ストレージ エンジン InnoDB のディスク I/...
この記事では、jQueryタグセレクターアプリケーションの具体的なコードを例として紹介します。具体的...
目次導入配列の作成作成方法詳しい説明方法参加する() push() と pop() shift() ...
導入この章では、主に Linux で FTP サーバーを構築するプロセスを紹介します。習得すべき重要...
1. 従来のLRUリンクリストについて簡単に説明するLRU:最も最近使われなかったものLRU リンク...
フォームを送信するときに、送信前に追加のパラメータが追加される状況が発生する場合があります。この問題...