😊

【インフラ_18日目】Docker_1冊目

2024/08/19に公開

こんにちは投資ロウトです。

背景

・過去に簡単にDockerの学習を行っておりましたが、環境構築を行なっていく必要があり、急ピッチでDockerを習熟してサービスをリリースしていかなければいけない背景があります。

コンテナの基本コマンド

docker runは以下の3コマンドが一緒になったものであるとのこと。

docker run = docker (image) pull + docker (container) create + docker (container) start

またコンテナは作っては捨てるため、以下のサイクルを繰り返すとのこと。

create(作成) → start(起動) → stop(停止) → rm(破棄)
※破棄(削除)するには、必ず停止をしなければ危険とのこと。

コンテナのオプション

# runコマンドのオプション

--name コンテナ名 # コンテナの名前を指定
-p ホストのポート番号:コンテナのポート番号 # ポートのマッピングを指定
-v ホストのディスク:コンテナのディスク # ホストディスクをコンテナにマウント
--net=ネットワーク名 # コンテナを指定したネットワークに接続
-e 環境変数名=値 # 環境変数を指定
-d # コンテナをバックグラウンドで実行

ライフサイクル系

# ライフサイクル系のコマンドで動いているものを表示
docekr ps
# 存在するコンテナを表示
docker ps -a

現在の実行中のコンテナがない例

試しに動作させる

# Apacheのイメージを「apa000ex1」というコンテナ名で実行する
docker run --name apa000ex1 -d httpd

# 実行しているコンテナを表示
docker ps

※statusの「Up」が稼働している状態とのこと。

# 実行しているコンテナを停止
docker stop apa000ex1
# 停止しているため、コンテナは表示されない
docker ps

# 逆に停止しているため、こちらは表示される
docker ps -a

# 「Exited」と止まっているので、削除する
docker rm apa000ex1

と短いですが、以上で学習を区切りたいと思います。ご精読ありがとうございました。焦らずコツコツ頑張っていきたいと思います。

Discussion