Dockerコマンドまとめ
docker
- コンテナ技術、コンテナ内に必要なアプリケーションを内包したImageを作成し、異なる環境に対して容易に適用できる状態にする。
- 単体のコンテナに対してのコマンド
基本的なコマンド
docker image build
Desc:DockerfileからDockerイメージをビルドする。
Sample:
docker image build -t example/echo:latest .
Note: "." はカレントディレクトリを指す。
docker search
Desc:Docker HubにホストされているDockerイメージを検索する
Sample:
docker search nginx
Note: リポジトリのスター数の降順で表示される。
docker image pull
Desc:DockerレジストリからDockerイメージを取得する
Sample:
docker image pull gihyodocker/echo:latest
docker image ls
Desc:対象のDockerホストが保持しているDockerイメージの一覧表示
Sample:
docker image ls --no-trunc
Note:--no-truncオプションをつけることでIDなどが省略されずフルで表示される
docker image push
Desc:DockerレジストリにDockerイメージを送信して登録する
Sample:
docker image push localhost:5000/ch04/todoapi:latest
docker image tag
Desc:Dockerイメージのタグを作成する
Sample:
docker image tag ch04/nginx:latest localhost:5000/ch04/nginx:latest
docker container run
Desc:新規にDockerコンテナを実行する
Sample:
docker container run -d --rm --name cronjob example/cronjob:latest
Note:「-d」はバックグラウンドで実行
docker container ls
Desc:dockerdが保持しているコンテナの一覧を表示する
Sample:
docker container ls --no-trunc
Note:「--no-trunc」をつけることでコンテナID一覧が表示できる
docker container stop
Desc:実行中のコンテナを停止する
Sample:
docker container stop $(docker container ls --filter "ancestor=example/echo" -q)
Note:stopの後コンテナIDではなくlsコマンドの結果を抽出・停止するようにすれば一々調べる必要がない。
docker container restart
Desc:停止したコンテナを再実行する
Sample:
docker container restart <containerId>
docker container rm
Desc:ディスクからコンテナを削除する
Sample:
docker container rm <containerId>
docker container logs
Desc:コンテナのログ(標準出力)を表示する
Sample:
docker container exec -it
Desc:実行中のコンテナの中でコマンドを実行する
Sample:
docker container exec -it <Name>.<ID> bash
docker container cp
Desc:コンテナからホスト側へファイル・ディレクトリをコピーする
Sample:
docker container cp <containerId>:<containerDir> <hostDir>
※引数の順番を逆にするとホスト→コンテナへのコピーとなる。
docker container prune
Desc:停止した全てのコンテナをディスクから削除する。(試したことはない)
Sample:
docker container prune
docker image prune
Desc:未使用の全てのDockerイメージをディスクから削除する(試したことはない)
Sample:
docker image prune
docker system prune
Desc:利用されていない一切のDockerリソース全てを削除する(試したことはない)
Sample:
docker system prune
docker container stats
Desc:コンテナ単位でのシステムリソースの利用状況をリアルタイムで表示する
Sample:
docker container stats --no-trunc
Note:「--no-trunc」を指定すると出力が省略されない
docker-compose
- 複数コンテナで構成されるサービスを起動・管理するための機能
- Dockerfileに必要な定義を設定、読み込むことで実現している
基本的なコマンド
docker-compose build
Desc:Composeで管理するServiceをイメージからビルドする
Sample:
docker-compose build
Note:実行した直下のDockerfileを読み込み、Imageのみ作成する
docker-compose create
Desc:Composeで管理するServiceを作成する
Sample:
docker-compose create
docker-compose start
Desc:Composeで管理するServiceを開始する
Sample:
docker-compose start
Note:コンテナ起動のみ※Imageがないとダメ
docker-compose up
Desc:Composeで管理するServiceを作成・開始する
Sample:
docker-compose up -d
Note:Image作成と起動まで全てやってくれる。オプション「-d」でバックグラウンド実行
docker-compose stop
Desc:Composeで実行中のServiceを停止する
Sample:
docker-compose stop
docker-compose rm
Desc:Composeで実行中のServiceを停止する
Sample:
docker-compose rm -f
オプション「-f」で強制削除
docker-compose down
Desc:Composeで実行中のServiceを削除する
Sample:
docker-compose down
Note:「docker-compose down --rmi all --volumes」という滅びの呪文があるらしい
docker-compose ps
Desc:Composeで実行中のコンテナ一覧を表示する
Sample:
docker-compose ps
docker-compose logs
Desc:COmposeで実行中のコンテナのログを集約して表示する
Sample:
docker-compose logs
以上です。