導入
このブログのキャッチコピーは「未来の自分のための技術メモ、時々あなたのためのヒント。」ですが、今回は未来の自分も、そしてDockerを学び始めたあなたにも役立つ、基本的なコマンドの「ヒント」集です。
開発現場で当たり前のように使われるようになったDockerですが、「黒い画面でコマンドを打つのが難しそう…」と感じていませんか?
Dockerは「コードの実行環境を丸ごとパッケージ化して、どこでも同じように動かせる」非常に便利な技術です。この記事では、そのDockerを操作するために最低限覚えておきたい基本コマンドを、目的別に整理してご紹介します。
Dockerの基本:コンテナのライフサイクル
Dockerの操作は、アプリケーションの入れ物である「コンテナ」を作ったり、動かしたり、消したりすることが基本です。まずは、その一連の流れを管理するコマンドを見ていきましょう。
1. コンテナを作成して起動する (run)
こんな時に使う: 新しいアプリケーションを初めて動かす時。
run
は、Dockerイメージ(コンテナの設計図)を元に、新しいコンテナを起動するコマンドです。
# NginxというWebサーバーのイメージを元に、コンテナをバックグラウンドで起動
# --name: my-nginx という名前を付ける
# -p 8080:80: PCの8080番ポートをコンテナの80番ポートに繋ぐ
docker run -d --name my-nginx -p 8080:80 nginx
このコマンド一発で、あなたのPCでWebサーバーが動き始めます。
2. 既存のコンテナを起動する (start)
こんな時に使う: 一度停止させたコンテナを、もう一度動かしたい時。
docker start my-nginx
3. コンテナを停止する (stop)
こんな時に使う: 起動しているコンテナを安全に止めたい時。
docker stop my-nginx
4. コンテナを削除する (rm)
こんな時に使う: 不要になったコンテナを完全に消したい時。(停止しているコンテナのみ削除できます)
docker rm my-nginx
状態を確認するコマンド
コンテナが今どうなっているのか、中身はどうなっているのかを確認するコマンドです。
5. コンテナの一覧を表示する (ps)
こんな時に使う: 今、どのコンテナが動いているか確認したい時。
# 起動中のコンテナ一覧
docker ps
# 停止中のコンテナも含めて全て表示
docker ps -a
6. コンテナのログを確認する (logs)
こんな時に使う: コンテナ内で動いているアプリケーションのエラーや出力を見たい時。デバッグの必需品です。
# -f を付けるとリアルタイムでログを追いかけられる
docker logs -f my-nginx
コンテナの中に入る・操作する
7. コンテナ内でコマンドを実行する (exec)
こんな時に使う: 起動中のコンテナの中に入って、ファイルを確認したり、コマンドを実行したりしたい時。
# -it を付けることで、対話的にシェルを操作できる
# /bin/bash を実行して、コンテナのシェルに入る
docker exec -it my-nginx /bin/bash
イメージとリソースの管理
コンテナの元となる「イメージ」や、PCのディスク容量を管理するコマンドです。
8. イメージの一覧を表示する (images)
こんな時に使う: PCにダウンロードされているDockerイメージを確認したい時。
docker images
9. イメージを削除する (rmi)
こんな時に使う: 古くなったり、不要になったイメージを削除してディスク容量を空けたい時。
docker rmi nginx
10. 不要なリソースを一括削除する (system prune)
こんな時に使う: 停止中のコンテナや古いイメージなどをまとめて掃除したい時。
# 停止中の全コンテナや、どのコンテナからも使われていないイメージなどを一括削除
docker system prune
注意: このコマンドは強力なので、必要なものを消してしまわないように注意しましょう。
まとめ
今回は、Dockerを操作するための基本的なコマンドを10個、厳選してご紹介しました。
一見すると難しそうですが、
run
(起動)ps
(確認)exec
(中に入る)stop
(停止)rm
(削除)
というライフサイクルを意識すると、少しずつコマンドの関係性が見えてくるはずです。
この記事が、あなたのDocker学習の第一歩の「ヒント」になれば幸いです。ぜひ、実際にコマンドを打ち込んで、コンテナが動く面白さを体験してみてください。
コメント