Dockerfile 構文の詳細な説明

Dockerfile は、Docker イメージを構築するプロセスを定義するために使用されるテキスト ファイルです。これには、Docker エンジンに基本イメージ上に新しいイメージを構築するように指示するために使用される一連の命令とパラメーターが含まれています。以下は、Dockerfile の構文の詳細な説明です。

  1. コメント#で始まる行動コメント。指示または指示に関するその他の情報を提供するために使用されます。
  2. Base ImageFROMディレクティブを使用してベースイメージを指定します。例:ベースイメージとしてFROM ubuntu:latest指定します 。ubuntu:latest
  3. メンテナ情報MAINTAINERコマンドを使用してメンテナの情報を指定します。例: MAINTAINER John Doe <[email protected]>
  4. 環境変数ENVディレクティブを使用して環境変数を設定します。たとえば、という環境変数ENV key=valueを定義し key、その値を に設定します value
  5. Working DirectoryWORKDIRディレクティブを使用して作業ディレクトリを設定します。例:WORKDIR /app作業ディレクトリを に設定することを意味します /app
  6. ファイルのコピーCOPYディレクティブを使用して、ファイルまたはディレクトリをビルド コンテキストからイメージにコピーします。例:COPY src /app/srcローカル srcディレクトリをミラー内のディレクトリに コピーします/app/src
  7. ファイルの追加ADDディレクティブを使用して、ファイルまたはディレクトリをビルド コンテキストからイメージにコピーします。に 似ていますCOPYが、 ADDファイルとリモート URL の自動解凍もサポートしています。例:ファイルADD archive.tar.gz /appを解凍し archive.tar.gz、イメージ内のディレクトリにコピーします /app
  8. コマンドの実行RUNコマンドを使用して、イメージ内のコマンドを実行します。例:RUN apt-get update && apt-get install -y packageミラーでコマンドを実行して apt-getパッケージを更新し、指定されたパッケージをインストールすること を意味しますpackage
  9. ポートを公開するEXPOSEディレクティブを使用して、コンテナー ランタイムがリッスンするポートを宣言します。例:EXPOSE 80コンテナがポート 80 でリッスンすることを示します。
  10. コンテナ起動コマンドCMDまたは ENTRYPOINTディレクティブを使用して、コンテナ起動時に実行するコマンドを設定します。CMDデフォルトのコマンドとパラメータを提供し、 ENTRYPOINT実行するコマンドを指定するために使用できます。例:CMD ["python", "app.py"]コンテナーの開始時にコマンドが実行されることを示します python app.py
  11. ミラーの構築docker buildコマンドを使用して、Dockerfile に従ってミラーを構築します。たとえば、docker build -t image_name:tag .現在のディレクトリにある Dockerfile を、 という名前 image_nameとタグが付けられた イメージにビルドしますtag

上記は Dockerfile の基本的な構文です。Docker イメージのビルド プロセスをカスタマイズおよび構成するために使用できる豊富な手順とオプションが提供されます。ニーズに応じて、さまざまな手順を使用してカスタム Docker イメージを作成できます。

おすすめ

転載: blog.csdn.net/tiansyun/article/details/132054585