コンテナ技術 ネットワーク技術

コンテナ技術に追い付きたい

dockerアイキャッチ

コンテナ技術(Docker)についてこれから追いつくにあたって、参考になるものを記述しました。

最初に読むべきもの

・コンテナについて最初に読んでおくといいもの

初心者のためのコンテナ入門教室(https://thinkit.co.jp/article/17211)
(第3回目までを始めに読むことを推奨します。)

・チュートリアルをやってみる

Get started | Docker Docs(https://docs.docker.com/get-started/)
このあたりをやると、自分で手を動かすことができるようになります。

DockerHubのアカウントを作成すること、DockerとDocker Composeがわかるようになることがファーストステップです。

チュートリアルだけでは私が理解できなかったものを補足します。

NGINXを使ってみる

NGINX ドッカーの公式イメージの使用方法(https://www.docker.com/ja-jp/blog/how-to-use-the-official-nginx-docker-image)を参考に、手順を追っていきます。

基本的なWebサーバの実行

docker run -it –rm -d -p 8080:80 –name web nginx

上記コマンドを実行すると、nginxが起動します。

  • –rm:コンテナが停止したときに自動的に削除されます。これにより、不要な停止コンテナがシステム上に残らないようになります。
  • -d:デタッチドモード(バックグラウンドモード)でコンテナを実行します。コンテナはバックグラウンドで実行され、端末には戻ってきます。
  • -p 8080:80:ポートマッピングを指定します。ホストマシンのポート8080をコンテナ内のポート80にマッピングしています。
  • –name web: 実行されるコンテナにwebという名前をつけます。これにより、後でこのコンテナを名前で参照して操作(停止、削除など)できるようになります。
  • nginx: 実行するDockerイメージの名前です。この場合、nginxイメージを使用してNginx Webサーバーを起動します。もしイメージがローカルに存在しない場合、Docker Hubから自動的にダウンロードされます。latestタグを持つイメージがダウンロードされます。

[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE

docker run -it –rm -d -p 8080:80 –name web nginx 実行すると、Dockerイメージが自動的にダウンロードされていることがわかります。

[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 39286ab8a5e1 3 weeks ago 188MB

docker stop web を実行して、コンテナを停止させましょう。–rmオプションがついているので、停止時にはコンテナも削除されます。

カスタムHTMLの追加

mkdir ~/site-content
cd ~/site-content
vi index.html #好きなコマンドでファイルを編集してください。
cd ..
docker run -it –rm -d -p 8080:80 –name web -v ~/site-content:/usr/share/nginx/html nginx

-vを付与して、ボリュームマウントを設定します。
作成したindex.htmlファイルをnginxのHTMLファイル配置フォルダへマウントします。

カスタム NGINX イメージの構築

index.htmlを含むイメージを作成してみます。

cd ~/site-content
vi Dockerfile

FROM nginx:latest
COPY ./index.html /usr/share/nginx/html/index.html

docker build -t webserver .

ビルド後にイメージが作成されていることがわかります。

docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
webserver latest b386927f18c2 46 seconds ago 188MB
nginx latest 39286ab8a5e1 4 weeks ago 188MB

実際に使っているとわからなくなるもの

DockerイメージとDockerコンテナについて

Docker imageは名前とタグが同じものは作れません。
Docker containerはイメージから複製として同じようなものを作成できます。

Docker containerは、runの際にオプションをつけないと自動では削除されないため、注意しましょう。

dockerイメージの一覧表示
docker images

dockerコンテナの一覧表示
docker container ls

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です