2020年5月19日火曜日

Dockerfileの記述方法について

1)FROM
①ベースイメージの設定
②publicのリポジトリを指定して取得するのが楽(例えば、ruby:2.3.3みたいなイメージ)
③複数回指定し複数イメージ作成することが可能だが、その場合は直前の内容までが一つのimageとしてcommitされる
④digestはdocker images --digestsで表示可能
FROM  
FROM : 
FROM @

例:
FROM nginx:1.15.0-alpine


2)MAINTAINER
作成者情報を設定
MAINTAINER

3)ADD
①新しいファイル、フォルダをコピーする。(圧縮されているファイルは展開される)
例:
ADD

4)COPY
②新しいファイルをフォルダコピーする。(圧縮されているファイルは展開されない)
COPY 
 ->主にxxxx.confファイル系をローカル上からコンテナに送り込むのに便利

5)ENV
③環境変数の設定
ENV  
ENV =

6)RUN
①対象のイメージにインストールされているコマンドを実行できる(useradd,yum,apt-get等はよく使う)
RUN 
例:
RUN pip install -r requirements.txt

7)EXPOSE
①特定のポートを解放する。
EXPOSE 

例:
EXPOSE 9000

8)CMD
①実行するコンテナーのデフォルト値を設定するのが一番の目的
②同じDockerfile内で使用できるのは一回のみ
③ENTRYPOINTに対して引数を設定することも可能

例1:
CMD echo "This is a test." | wc -
例2:
CMD ["/usr/bin/wc", "--help"]


9)WORKDIR
①ワークディレクトリを設定する
②同じDockerfile内に複数回指定可能
③ENVで登録したパスを利用してもよい

例:
/var/www/laravel

0 件のコメント:

コメントを投稿

ローカルLLMでコーディングさせるポイント

 簡単な指示で、依頼するとコンテキストオーバーで記憶喪失になって コードの内容が一致しないことが起こるので、work.mdみたいな作業メモを取らせたるのがよい 途中から、別スレッドに再実施する場合でも、work.mdが引き継ぎとして 参照して実施してくれるのがポイント