Docker備忘録 1

dockerの学び直し。備忘録です。

CMD命令

 
 

 

 

ENTRYPOINT命令

デーモンの実行

docker  container runコマンドを実行した時に、実行される

 

CMDとENTRYPOINTの違い

ENTRYPOINTで実行したいコマンドそのものを指定して、CMDでそのコマンドの引数を指定する

 

 

 

 

ONBUILD命令

自身のDockerfileから生成したイメージをベースイメージとした別のDockerをビルドする時に実行したいコマンドを記述する。

 

例えば、webサービスを開発する時に、OSインストール・環境変数の設定・各種ライブラリのインストールなどのインフラ構築に関する部分を、ベースイメージとして作成する。

このとき、ONBUILD命令で、イメージの中に開発したプログラムをデプロイする命令を指定する。

アプリ開発者は、アプリケーションの実装部分をコーディングし、すでに作成済みのベースイメージを元にイメージを作成する。ベースイメージを元にイメージを作成する際に、ベースイメージでONBUILDで指定されていた命令がフックされて、実行される!!

 

1 ベースイメージの作成

Dockerfile.base

 

 

2 webコンテンツの作成

アプリ開発をする

website.tarファイルにcss htmlをまとめておく。

 

3 webサーバ用のイメージを作成

Dockerfile

webサーバ用のイメージを作成する。

ここには、先ほど作成したベースイメージをFROMで指定する。

 

 

この時に、Dockerfile.baseでONBUILDで指定した命令が実行される。

ONBUILD ADD website.tar /var/www/html

 

4 webサーバ用のコンテナの起動

 

http://localhostにアクセスすると、アプリケーションがデプロイされていることが確認できる。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA