Docker Dockerfileインストラクション編 ~最低限の知識~

Dockerfile内で使用するインストラクション

FROM
ビルドするイメージのベースイメージ

RUN
イメージをビルドする際にコンテナで実行するコマンドを定義

COPY
ホスト側からコンテナ側にファイル・ディレクトリをコピー

ADD
COPYの機能に加えてアーカイブの自動展開やURLを指定して
ファイル・ディレクトリをコンテに追加。
OSのベースイメージ作成時のような特殊はケースで活用される

CMD
コンテナがフォアグラウンドで実行するコマンドを定義。

ENTRYPOINT
コンテナを実行可能ファイルとして使用する際に定義するコマンド。
CMDとENTRYPOINTは併用可能。

ARG
docker image build時に利用する変数。

ENV
コンテン内の環境変数を定義。

EXPOSE
コンテナが公開するポート。

VOLUME
ホストや他のコンテンからマウントできるポイントを作成する。

LABEL
イメージに追加するメタデータ

STOPSIGNAL
コンテナに送られて終了するシステムコール信号を設定。

HEALTHCHECK
コンテナ内でコマンドを実行し、その結果をヘルスチェックとして利用する。

USER
コンテナ実行時のコンテナユーザー。イメージビルド時、USER定義後のRUNもそのユーザーで実行される。

WORKDIR
コンテナの作業ディレクトリ。

ONBUILD
コンテナ内で実行するコマンドを定義するが、定義したイメージでは実行されない。
ONBUILDを定義したベースイメージを利用するイメージのビルド時に実行される。