LoginSignup
0
1

More than 1 year has passed since last update.

entrykitについて

Posted at

entrykitは、コンテナ実行時にテンプレートファイルをレンダリングしたり、起動コマンドを切り替えることができる。

entrykitの使い方

Dockerfileで以下のように設定する。

  1. entrykitをインストール
  2. テンプレファイルをコンテナにコピー
  3. ENTRYPOINTでコマンドの設定する

ENTRYPOINTは、["コマンド", "パラメータ1", "パラメータ2"]を定義する。

entrykitの機能

entrykitの機能をまとめました。

  • レンダリング
  • コマンドの切替

それぞれ詳しく解説します。

render機能

コンテナ実行時に環境変数の値を指定することで、テンプレートファイルをレンダリングすることができる機能。

例えば、nginxの設定でnginx.conf.tmplファイルをレンダリングするなら、以下のように設定する。

worker_processes {{ var "WORKER_PROCESSES" | default "1"}}

※デフォルト値は設定しなくても問題ない。

この環境変数のレンダリングは、Dockerfileをビルドした後に、以下のコマンドを実行する。

docker run -it -p 80:80 -e WORKER_PROCESSES=変更したい値 イメージ名

switch機能

ENTRYPOINTで定義したコマンドを切り替える事ができる。

例えば、ENTRYPOINT ["switch", "A=コマンド1", "B=コマンド2", "コマンド3"]のように設定し、$docker runを場合。

  • 通常起動=コマンド3が実行。
  • イメージ名 Bを指定=コマンド2を実行。
  • イメージ名 Cを指定=コマンド1を実行。

自由にコマンドを選択することが可能になる。

prehook機能

メインプロセス起動前のコマンドを設定できる。

ENTRYPOINT、["prehook", "パラメータ1", "パラメータ2"]

codep機能

複数プロセスを同時起動することができる。

例えば、シェルスクリプトAとBが存在すると、以下のようなコマンドで同時に実行できる。

ENTRYPOINT、["codep", "シェルA", "シェルB"]

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1