ぽれいんのブログ

エンジニアになるために覚えたことを日記に付けます。

Dockerの基礎の基礎の基礎

はじめに

インフラエンジニア初学者のぽれいんと申します。

転職する前はプログラミングスクールにて主にHTML、CSSRubyMySQL等について学びました。

※このブログでは自分が後々、見返すことができるようにまとめることを目的としていますが、もし需要があるようでしたら是非ともご覧ください。

<前回の記事>

porain.hatenablog.com

 

<参考記事>

Dockerfileとdocker buildコマンドでDockerイメージの作成:いまさら聞けないDocker入門(3)(1/2 ページ) - @IT

Dockerfileとdocker buildコマンドでDockerイメージの作成:いまさら聞けないDocker入門(3)(2/2 ページ) - @IT

 

 

 

 

コンテナ

コンテナは仮想基盤を提供する方式として、従来からのホストOS型、ハイパーバイザ型に加えてここ近年はコンテナ型と呼ばれるものが利用されるようになってきたそう。

メリット

  • 起動が速い
  • 同じ構成の環境を簡単に再現

デメリット

  • ホストとコンテナで異なるOSは使えない

 

使ってみる

dockerをインストール

 yum install docker

dockerを起動し、プロセスを確認

systemctl start docker
ps -efH | grep docker

自身の作業ディレクトリを作成し、作業ディレクトリに移動

mkdir /opt/porain
cd /opt/porain/

'dockertest'をindex.htmlにリダイレクト

echo 'dockertest' > index.html

Dockerfileを作成

Dockerfile…Dockerコンテナーの構成内容をまとめて記述するシンプルなテキスト形式のファイル

Dockerfileの記述方法

{命令} 用途
FROM 元となるDockerイメージの指定
MAINTAINER 作成者の情報
RUN コマンドの実行
ADD ファイル/ディレクトリの追加
CMD コンテナーの実行コマンド 1
ENTRYPOINT コンテナーの実行コマンド 2
WORKDIR 作業ディレクトリの指定
ENV 環境変数の指定
USER 実行ユーザーの指定
EXPOSE ポートのエクスポート
VOLUME ボリュームのマウント
vi Dockerfile
###以下を記入
--------------------------
FROM nginx
EXPOSE 80
COPY index.html /usr/share/nginx/html
CMD nginx -g "daemon off;"
--------------------------

my_nginxという名前でDockerコンテナーの起動、構成、Dockerイメージの作成
まで一気に実行

docker build . -t my_nginx

Dockerイメージ一覧を確認

docker images

Docerコンテナを起動

docker run -d -p 80:80 --name web my_nginx

Dockerコンテナ一覧を確認

docker ps

 

以上