Edited at

docker & docker-compose コマンド集

日時: 2019.4/17

Dockerバージョン: Docker version 18.09.2

目的:よく使うdockerコマンドをメインに、基本的なdockerコマンドを集めていく


■よく使うシリーズ


docker-compose build

docker-compose.ymlの内容に基づいてイメージを作成する

$ docker-compose build


docker-compose up

docker-compose.ymlに書かれた依存関係をもとに、よしなにイメージを元にしてコンテナの作成と起動してくれる。

イメージはdocker-compose buildで作成する必要があります。

$ docker-compose up


docker-compose down

docker-compose.ymlに書かれている内容をみてコンテナを停止してくれる。また、そのコンテナとネットワークの削除もしてくれます

「--rmi all」オプションをつけると、コンテナだけでなく、もとになったイメージも削除してくれます。

$ docker-compose down


docker-compose down --rmi all --volumes

ちなみに、「--rmi all」オプションに「--volumes」もつけると、

コンテナを止めて、ネットワークを削除して、ボリュームもイメージも削除してくれる凄いコマンドになります

$ docker-compose down--rmi all --volumes


docker ps

現在起動しているコンテナの一覧を見れる

$ docker ps


docker ps -a

起動しているものと起動していないもの、全てのコンテナの一覧をみれる

$ docker ps -a


docker images

Dockerfileを元にbuild(作成)したイメージの一覧を表示してくれる

$ docker images


docker logs (コンテナのID)

docker psコマンドで表示されるコンテナIDを引数に指定すると、logの確認ができます

$ docker logs 


■dockerコンテナの中に入って作業をしたい時

いくつか方法があるのでお好きな方法で作業してください


docker exec -it コンテナ名 bash

すでに動いているコンテナはdocker psコマンドで確認できます。コンテナ名も同時に確認できます

コンテナから抜けたい場合は、[Ctl] + [C]コマンドで抜けれます。

$ docker exec -it nginx(← 例です) bash


docker attach コンテナ名またはコンテナID

注意点としては、

このコマンドでコンテナ内に入った場合、[Ctl] + [C]コマンドでコンテナから抜けるとコンテナは停止してしまいます。

コンテナを起動したままコンテナから抜けたい場合は、

[Ctl] + [p], [Ctl] + [q] の両方を同時に押してください。

$ docker exec -it nginx(← 例です) bash


■その他dockerを使う上で必要なコマンド


dockerコンテナを削除

コンテナ名orコンテナIDは「docker ps -a」コマンドを実行すると見れます

$ docker rm コンテナ名orコンテナID


dockerイメージを削除

イメージIDは、「docker images」コマンドで確認できます

$ docker rmi イメージID 


dockerイメージの詳細情報確認

イメージIDは、「docker images」コマンドで確認できます

$ docker inspect イメージID


イメージからコンテナの作成

コンテナの作成をするだけで、コンテナの起動はしません

$ docker create イメージID

その他にも、

「docker create」

「docker run」

「docker start」

「docker stop」

「docker restart」

「docker stats」

「docker pause」

「docker unpause」

「docker top」

「docker port」

「docker rename」

「docker cp」

「docker diff」

「docker version」

「docker info」

などがありますが、ここで書くよりもググったほうがわかりやすい記事があると思います笑