【Docker】Dockerチートシート - j-komatsu/myCheatSheet GitHub Wiki
Dockerチートシート
目的
Dockerを活用して、アプリケーションのコンテナ化、デプロイ、管理を効率化する。
インデックス
- Dockerイメージの取得
- コンテナの作成と起動
- 実行中のコンテナの確認
- コンテナの停止と削除
- Dockerfileを使ったイメージのビルド
- Dockerネットワークの管理
- ボリュームの管理
- Docker Composeの基本操作
- コンテナ内での作業
- Dockerログの確認
- Docker Composeでのデーモン起動
- コンテナとホスト間のファイル操作
1. Dockerイメージの取得
- 目的: Docker Hubなどから必要なイメージをダウンロードする。
- 構文:
docker pull [イメージ名]
- 使用例:
最新のUbuntuイメージを取得。
docker pull ubuntu:latest
2. コンテナの作成と起動
- 目的: イメージからコンテナを作成し、起動する。
- 構文:
docker run [オプション] [イメージ名]
- 使用例:
Ubuntuコンテナをインタラクティブモードで起動。
docker run -it ubuntu
3. 実行中のコンテナの確認
- 目的: 現在実行中のコンテナを確認する。
- 構文:
docker ps
- 使用例:
全コンテナ(停止中も含む)を確認。
docker ps -a
4. コンテナの停止と削除
- 目的: 実行中のコンテナを停止し、不要なコンテナを削除する。
- 構文:
docker stop [コンテナIDまたは名前] docker rm [コンテナIDまたは名前]
- 使用例:
コンテナを停止して削除。
docker stop my_container docker rm my_container
5. Dockerfileを使ったイメージのビルド
- 目的: カスタムDockerイメージを作成する。
- 構文:
docker build -t [イメージ名] [Dockerfileのパス]
- 使用例:
現在のディレクトリにあるDockerfileを使用してイメージをビルド。
docker build -t my_image .
6. Dockerネットワークの管理
- 目的: コンテナ間の通信を設定する。
- 構文:
docker network [コマンド]
- 使用例:
カスタムネットワークを作成。
docker network create my_network
7. ボリュームの管理
- 目的: コンテナ間でデータを共有する。
- 構文:
docker volume [コマンド]
- 使用例:
ボリュームを作成して確認。
docker volume create my_volume docker volume ls
8. Docker Composeの基本操作
- 目的: 複数のコンテナを一括管理する。
- 構文:
docker-compose [コマンド]
- 使用例:
Docker Composeでサービスを起動。
docker-compose up
9. コンテナ内での作業
- 目的: 実行中のコンテナに入って操作する。
- 構文:
docker exec -it [コンテナIDまたは名前] /bin/bash
- 使用例:
コンテナ内でシェルを起動。
docker exec -it my_container /bin/bash
10. Dockerログの確認
- 目的: コンテナのログを確認する。
- 構文:
docker logs [コンテナIDまたは名前]
- 使用例:
実行中のコンテナのログを確認。
docker logs my_container
11. バックグラウンドでDocker Composeの起動
- 目的: バックグラウンドでサービスを起動する。
- 構文:
docker-compose up -d
- 使用例:
バックグラウンドでDocker Composeのサービスを起動。
docker-compose up -d
12. コンテナとホスト間のファイル操作
- 目的: コンテナとホスト間でファイルをコピー・同期する。
- 構文:
docker cp [ホストファイルパス] [コンテナIDまたは名前]:[コンテナ内パス] docker cp [コンテナIDまたは名前]:[コンテナ内パス] [ホストファイルパス]
- 使用例:
ホストからコンテナにファイルをコピー。
コンテナからホストにファイルをコピー。docker cp ./myfile.txt my_container:/root/
docker cp my_container:/root/myfile.txt ./