Docker入門
dockerインストールを完了してコマンドが使用できる状態。
以下記事に従ってdockerの流れを実践。
https://knowledge.sakura.ad.jp/13795/
https://docs.docker.jp/docker-for-windows/index.html
①Docker Desktopを開く
→dockerコマンドで操作できるようになる。
②試しにhello-worldイメージを取得して起動する
docker run hello-world
→ローカル環境にDockerイメージが無いため、Docker Hubに探しに行き、存在すればDockerイメージをダウンロード。
hello-worldイメージのダウンロードが完了したら、そのイメージを使用してコンテナを起動させている。このhello-worldイメージは、コンテナ起動をしたら、コンテナの中でHello from Docker!~のメッセージを出力するようなDockerイメージなので、そのメッセージが出力されたら、無事起動できたということ。
③イメージ取得確認
>docker images
④コンテナとその状態確認
>docker ps -a
⑤コンテナの削除
# docker rm <コンテナ名> (コンテナ名はdocker ps -aで確認)
または
# docker rm <CONTAINER ID> (コンテナIDはdocker ps -aで確認)
→④で削除できたかどうかを確認
停止中のコンテナをそのままにしておくと、ゴミデータが残ったままになったり、ディスク圧迫にもつながるので、不要になったコンテナは削除を忘れないように!
⑥イメージの削除
# docker rmi <Dockerイメージ名> (docker imagesのREPOSITORYで確認?)
または
# docker rmi <IMAGE ID> (docker imagesで確認)
→③で削除できたかどうかを確認。
イメージについても、不要なイメージは削除しましょう。特に、JenkinsなどのCI(Continuous Integration) ツールを使用して、Dockerイメージの作成やコンテナ起動を自動で実行するような場合、気づかないうちに不要データが残り続けて、ディスクを圧迫することになるので注意しましょう。(Disk Fullを起こすと、Docker環境の復元も困難になる場合があるので、十分注意したほうが良いです。)
■その他のTips
・イメージの取得
docker pull <image name>
・取得したイメージを使用してコンテナを起動
docker run -d --name <命名したいコンテナ名> -p 8181:80 nginx
-d オプション・・・コンテナをバックグラウンド実行します。このオプションを付けない場合、コンテナ起動時に実行されるコマンドを実行した状態になり、例えばそのコマンドのコンソール出力が表示された状態になります。
–name オプション・・・コンテナ名を指定します。(これが無いと、自動で指定される)
-p オプション・・・ホストとコンテナ間のポートフォワード設定。-p ホストとコンテナ間のポートフォワード設定。基本的には、「-p <ホスト側のポート>:<コンテナ側のポート>」で書きます。(ホスト側を省略すると自動で設定されます。)コンテナは、Dockerにより作成されるネットワークに属するため、このオプションを使わないと、ホストのIPアドレスを用いて、コンテナで使用しているポートにはアクセスができません。
・STATUSが「Up」のコンテナの停止
docker stop <container name>