素敵なサムシングを独断と偏見で一方的に紹介するブログ(´・ω・`)

IT

投稿日: 2018年1月22日
最終更新日:

Dockerfileに設定を記述して実行する方法

【最新機種】GoPro hero11 Black

created by Rinker
GoPro(ゴープロ)
¥62,000 (2024/04/03 21:42:08時点 Amazon調べ-詳細)

最新機種でVlogの思い出を撮影しよう!

[ノースフェイス] THE NORTH FACE メンズ アウター マウンテンライトジャケット

created by Rinker
THE NORTH FACE(ザノースフェイス)
¥33,430 (2024/04/03 21:42:09時点 Amazon調べ-詳細)

防水暴風で耐久性抜群なので旅行で大活躍です!

ペヤング ソースやきそば 120g×18個

created by Rinker
ペヤング
¥2,600 (2024/04/03 21:42:16時点 Amazon調べ-詳細)

とりあえず保存食として買っておけば間違いなし!

レッドブル エナジードリンク 250ml×24本

created by Rinker
Red Bull(レッドブル)
¥4,000 (2024/04/03 21:42:12時点 Amazon調べ-詳細)

翼を授けよう!

モンスターエナジー 355ml×24本 [エナジードリンク]

created by Rinker
モンスター
¥4,748 (2024/04/03 21:33:15時点 Amazon調べ-詳細)

脳を活性化させるにはこれ!

Bauhutte ( バウヒュッテ ) 昇降式 L字デスク ブラック BHD-670H-BK

created by Rinker
Bauhutte(バウヒュッテ)
¥14,935 (2024/04/03 21:42:10時点 Amazon調べ-詳細)

メインデスクの横に置くのにぴったりなおしゃれな可動式ラック!

BANDAI SPIRITS ULTIMAGEAR 遊戯王 千年パズル 1/1スケール

created by Rinker
BANDAI SPIRITS(バンダイ スピリッツ)
¥7,500 (2024/04/03 21:42:14時点 Amazon調べ-詳細)

もう一人の僕を呼び覚ませ!!

スポンサーリンク

336×280




Dockerfileとは?

以前、コチラの記事にて、Docker For Macをインストールし、コマンド実行でHello worldを表示して見ました。

ただ、シンプルな実行内容のためコマンド引数で実行できたものの、もっと複雑な処理を実行した場合はコマンド引数では限界があります。

そんな時は、Dockrfileを作成してみましょう。

メリット

・Dockerfileは複雑なDockerの実行命令をファイル管理可能
→ 設定ファイルとして管理することにより、可読性が上がりファイルを渡すことで他のPC環境でも同じ処理が簡単に実行出来ます。

・image管理
→ コマンド実行だと毎回同じようなコマンドを叩く必要があるが、Dockerfileを作ってビルドすることでimageと呼ばれるデータを作ることが出来ます。
また、一度このimageファイルを作れば毎回ビルドする必要はなくimageファイルを実行することで同じ動きを行うことが可能です。

手順

Dockerfileの作成

まずはDockerfileを作成してみましょう。

以下のDockerfileファイルを作成してください。

imageファイルの作成

Dockerfileからイメージファイルを作成するには以下のコマンドを実行します。


-tオプションは作成するimageファイルにタグ(名前)をつけたい場合に指定します。
今回は分かりやすくするためにhello_worldという名前をつけました。
ちなみに、
・RUN -> ビルド時に実行されるコマンド
・CMD → イメージ実行時に起動されるコマンド
です。

実行後に以下のコマンドでimages一覧を表示してみましょう。



正常にhello_worldというimageが作成されていますね。

imageファイルの実行

以下のコマンドで作成したimageファイルを作成してみましょう。


正常に実行されました。

dockerコンテナ

imageファイルを実行するとコンテナというものが作成されます。
以下のコマンドで確認出来ます。



-aオプション停止しているコンテナも含め表示します。
※先ほど作成したhello_worldイメージは実行後にすぐに停止します
dockerはイメージとコンテナの関係性の理解が大切です。

コンテナの削除

一度コンテナが作成されると基本的には残り続けます。
不要なコンテナを削除して見ましょう。

先ほどのコマンドでCONTAINER IDが表示されていましたが、削除する場合はこのCONTAINER IDを指定することで削除が可能です。


これでコンテナの削除が完了です。

イメージの削除

次にイメージを削除してみましょう。
気をつけないといけないのは、イメージを削除する場合は、先にイメージから作成したコンテナを削除しないと、
Error response from daemon: conflict: unable to delete {削除したいIMAGE ID} (must be forced) – image is being used by stopped container {利用しているCONTAINER ID}
が発生して、削除出来ないので気をつけましょう。

以下のコマンドでイメージを削除することが可能です。


これでイメージの削除も完了です。

あとがき

今回はDockerfileの中身がとても少ないサンプルで紹介しましたが、システム開発でDockerfileを使う場合はものすごく複雑な記述になるので、Dockerfileの恩恵を受けることになります。

Dockerfileを使うデメリットはほとんどないので皆さんもDockerfileを作成するように心がけてみましょう。

336×280




336×280




CATEGORIES & TAGS

IT, , , , ,

blogenist

Author: blogenist

関連記事

YouTubeも見てね♪

お名前.comサイドバー