Dockerは、アプリケーションを軽量な「コンテナ」という単位で動かす技術です。
コンテナは仮想マシンよりも軽量で起動が速く、複数環境を同じマシン上で効率的に管理できます。
初心者がまず理解すべきポイントは以下です。
- コンテナ:アプリケーションとその依存関係をまとめた実行環境
- イメージ:コンテナを作る元となるテンプレート
- Dockerコマンド:コンテナの作成・確認・操作を行うための指示
この記事では、特に「今どのコンテナが動いているのか」「コンテナにどう入るのか」に焦点を当て、初心者でも迷わず操作できる手順を解説します。
起動中のコンテナを確認する方法
docker psコマンドの基本
起動中のコンテナを確認するには、次のコマンドを使用します。
$ docker ps
実行すると、以下の情報が一覧で表示されます。
- CONTAINER ID:コンテナ固有のID
- IMAGE:使用しているDockerイメージ
- COMMAND:コンテナ内で実行されているコマンド
- STATUS:コンテナの状態(Up○分など)
- PORTS:ポートのマッピング
- NAMES:コンテナ名
このコマンドを使うことで、どのアプリケーションが稼働中か一目で確認できます。
表示される情報の意味
初心者がつまずきやすいポイントとして「STATUSやPORTSの意味」があります。
例えば、Up 5 minutesは「起動して5分経過」、0.0.0.0:8080->80/tcpは「ホスト8080ポートがコンテナの80番ポートに接続されている」ことを示します。
停止中も含めた全コンテナの確認
docker ps -aの使い方
起動中だけでなく、停止中のコンテナも含めて一覧を見たい場合は次のコマンドを使用します。
$ docker ps -a
これにより、停止したコンテナも確認でき、不要なコンテナの削除や再起動などが容易になります。
実務での活用例
- 開発中にエラーで停止したコンテナを確認
- 不要になった古いコンテナを整理
- トラブルシューティング時に過去のコンテナのログを参照
コンテナに入る方法
docker exec -it CONTAINER_ID bash
コンテナの中で操作を行いたい場合、docker execコマンドを使います。
手順は以下の通りです:
- docker psで対象コンテナの CONTAINER ID を確認
- 次のコマンドでコンテナ内に入る
docker exec -i -t CONTAINER_ID bash
- -i:標準入力を有効化
- -t:擬似端末を割り当て
- bash:bashシェルを起動
これでコンテナ内に入り、Linuxのコマンドを自由に実行できます。
コンテナから抜ける
作業が終わったら、exitコマンドでコンテナから抜けます。
- コンテナ自体は停止せずにバックグラウンドで動作し続けます
- 完全に停止させたい場合は docker stop CONTAINER_ID を使用
よくあるトラブルと回避策
初心者がつまずきやすいポイントをまとめました。
- コンテナが見つからない
- docker psで起動中か確認、停止中は docker ps -a を使用
- コンテナに入れない
- 正しい CONTAINER ID を指定
- 権限不足の場合は sudo を付与
- 環境変数やボリュームが反映されない
- コンテナ作成時に -e や -v オプションを確認
まとめと次のステップ
本記事では、Dockerコンテナの確認と操作の基本を解説しました。
- docker ps:起動中のコンテナ確認
- docker ps -a:停止中も含めて全コンテナ確認
- docker exec -it … bash:コンテナ内に入る手順
初心者でも迷わず操作できるよう、手順と背景を丁寧に解説しました。
さらに詳しい情報は公式ドキュメントも参考にしてください。
Docker公式ドキュメント - Docker Engine
次のステップとして、Dockerコンテナの削除やログ確認、ネットワーク操作などを学ぶと、より実践的な運用が可能になります。