LoginSignup
1
1

More than 1 year has passed since last update.

(Dockerfile) DSLコマンド入門!

Posted at

背景 

Dockerfileの書き方があまりよく分かってなかったので、復習として整理する。

Dockerfileとは?

Dockerではcontainerを作るために、まずimageという材料を用意しなければならないのですが、そのimageの設計図がDockerfileです。

Dockerfileを書くときに使うコマンドは色々あるのですが、初心者のうちは

FROM,COPY,RUN,CMD,WORKDIR,ENV,USER

だけ覚えておけばいいそうです。なのでこの記事でも上記の7つのコマンドの意味を説明していきます。

FROM

FROMコマンドとはどのimageを使うのかを指定するコマンドです。
一番最初にどのimageを使うかを指定してから他のコマンドをより詳細に付け足していきます。

COPY

このコマンドはDockerのコンテナ内にローカルで作成したファイルやディレクトリをコピーしてくれます。

RUN

Dockerコンテナに入ったら、RUNで指定されたコマンドを実行してくれます。

CMD

Dockerを起動すると自動でコマンドを実行してくれます。

WORKDIR

Dockerfileでコマンドを実行するときにどこのディレクトリを基準(スタート)にするかを設定できます。存在しないディレクトリを指定した時は自動的にディレクトリが作成され、何も設定しなければデフォルトでは/のディレクトリが設定されているので、既存のディレクトリを上書きしてしてしまう恐れがあります。

ENV

環境変数を設定してくれるコマンドです。ちなみに環境変数とはOSが持っている変数のことです。

USER

USERはimageを起動したときにどのユーザーがログインするかを指定することができます。デフォルトではrootユーザーが設定されているので、セキュリティのことを考えるとroot以外のユーザーを指定するのが推奨です。

1
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
1
1