よく使う物だけを抜粋したdockerコマンドの使い方とオプションの一覧まとめ

Dockerコマンド
よく使う物だけを抜粋したdockerコマンドの使い方とオプションの一覧まとめ
Memo
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

よく使用するものだけを抜粋したdockerコマンドの一覧まとめをメモしました。

Docker(ドッカー)

Dockerとは

Dockerとは

Dockerとはオープンソースのコンテナ型の仮想化技術のプラットフォームになります。
プラットフォームとしてアプリケーションを作成したり、配布したり、実行したりすることができます。

公式サイト

Docker公式サイト

Dockerのインストール手順

Dockerのインストール手順についてはこちらを参照ください。

Mac に Docker Desktop をインストール

CentOS7へDocker環境を構築

docker-compose コマンド

docker-compose コマンドの使い方についてはこちらを参照ください。

docker-composeコマンドの使い方

環境

  • Mac OS Big SUR 11.3.1
  • Docker 20.10.5, build 55c4c88

ファイル操作で利用するUnixコマンドについて

基本的なディレクトリ作成やファイル操作はUnixコマンドを利用します。
Unixコマンドについて詳しくはこちらの記事を参考にしてください。

Docker 管理コマンド

docker info

Docker のインストールに関する広範囲なシステム情報を表示します。

terminal
$ docker info

docker version

Dockerのバージョン情報を読みやすい形式で表示します。

terminal
$ docker version

Docker イメージ用コマンド

docker images

Dockerイメージの一覧を表示します。

使い方

terminal
$ docker images [オプション] [リポジトリ[:タグ]]

直近で作成したDockerイメージから一覧表示

トップ・レベルのDockerイメージと、リポジトリ・タグ・容量を表示します。

terminal
$ docker images

Dockerイメージ名を指定して一覧表示

Dockerイメージ一覧からnodeという条件が一致するものだけ表示します。

terminal
$ docker images node

docker build

パスにあるソースコードから新しいDockerイメージを構築します。

使い方

terminal
$ docker build [オプション] パス | URL | -

PATH で構築

Dockerfileを配置したディレクトリで実行します。

terminal
$ docker build .

URL で構築

GitHubリポジトリのクローンを作成、クローンしたリポジトリをコンテクストとして利用します。
リポジトリのルートにあるDockerfileを構築時のDockerfileとして利用します。

$ docker build github.com/creack/docker-firefox

docker commit

リポジトリ内のDockerイメージにタグ付けします。

使い方

terminal
$ docker tag [オプション] 名前[:タグ] 名前[:タグ]

ID を参照してイメージをタグ付け

ローカルにあるID「0e5574283393」イメージを、「fedora」リポジトリの「version1.0」とタグ付けします。

terminal
$ docker tag 0e5574283393 fedora/httpd:version1.0

名前を参照してイメージをタグ付け

ローカルにある名前が 「httpd」のイメージを、「fedora」リポジトリの「version 1.0」とタグ付けします。

terminal
$ docker tag httpd fedora/httpd:version1.0

docker rmi

1つまたは複数のDockerイメージを削除します。

使い方

terminal
$ docker rmi [オプション] イメージ [イメージ...]

Dockerイメージを削除

ID、タグ、digest を使ってDockerイメージを削除できます。 Dockerイメージがタグによって参照されている場合、Dockerイメージを削除する前にそれらの削除が必要です。

terminal
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE test1 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB) test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB) test2 latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB) $ docker rmi test1 Untagged: test1:latest $ docker rmi test2 Untagged: test2:latest $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE test latest fd484f19954f 23 seconds ago 7 B (virtual 4.964 MB) $ docker rmi test Untagged: test:latest Deleted: fd484f19954f4920da7ff372b5067f5b7ddb2fd3830cecd17b96ea9e286ba5b8

イメージを強制削除

terminal
$ docker rmi -f test1

Docker コンテナ用 コマンド

docker ps

現在起動しているDockerコンテナの一覧を確認します。

使い方

terminal
$ docker ps [オプション]

実行中のDockerコンテナ一覧を表示

実行中のDockerコンテナ一覧を表示します。

terminal
$ docker ps

全てのDockerコンテナ一覧を表示

-aオプションをつけて停止しているDockerコンテナも含めた全てのDockerコンテナ一覧を表示します。

terminal
$ docker ps -a

docker create

イメージからDockerコンテナを作成します。

使い方

terminal
$ docker create [オプション] イメージ [コマンド] [引数...]

Dockerコンテナを作成

appというDockerコンテナをNodeJSのイメージを元に作成します。
起動はしません。

terminal
$ docker create -d -it --name app node:7

docker start

作成されているDocker コンテナを起動します。

使い方

terminal
$ ddocker start [オプション] コンテナ [コンテナ...]

Docker コンテナを起動

appというDockerコンテナを起動します。

terminal
$ docker start app

docker exec

実行中のDockerコンテナでコマンドを実行します。

使い方

terminal
$ docker exec [オプション] コンテナ コマンド [引数...]

Dockerコンテナの中でコマンド実行

appという名前のDockerコンテナでコマンドを実行します。

terminal
$ docker exec app ls

コンテナへログイン

appという名前のDockerコンテナの中に入ります。

terminal
$ docker exec -it app bash

docker logs

コンテナのログを表示します。

使い方

terminal
$ docker logs [オプション] コンテナ

Dockerコンテナのログを表示

appという名前のDockerコンテナのログを表示します。

terminal
$ docker logs app

Dockerコンテナのログをたら流し表示

-fオプションをつけてappという名前のDockerコンテナのログを垂れ流しで表示します。

terminal
$ docker logs -f app

docker run

指定イメージを元に新しいDockerコンテナを起動状態で立ち上げます。

使い方

terminal
$ docker run [オプション] イメージ [コマンド] [引数...]

Docker コンテナを立ち上げログイン

appというDockerコンテナをNodeJSのイメージをもとに作成しコンテナへログインします。

terminal
$ docker run -it --name app node:16

docker stop

Docker コンテナを停止します。

使い方

terminal
$ ddocker stop [オプション] コンテナ [コンテナ...]

Docker コンテナを停止

appというDockerコンテナを停止します。

terminal
$ docker stop app

docker rm

1つまたは複数のDockerコンテナを削除します。

使い方

terminal
$ docker rm [オプション] コンテナ [コンテナ...]

Dockerコンテナを削除

appというDockerコンテナを削除します。

terminal
$ docker rm app

全てのDockerコンテナ削除を表示

停止しているDockerコンテナを全て削除します。
docker ps -a -qコマンドは終了した全てのコンテナIDをrmコマンドに渡し
全て削除するものです。実行中のDockerコンテナは削除されません。

terminal
$ docker rm $(docker ps -a -q)

参考文献

終わりに

最後までご覧いただきありがとうございます。
この記事ではよく使う物だけを抜粋したdockerコマンドの使い方とオプションの一覧まとめについて紹介させていただきました。

これからも皆様の開発に役立つ情報を提供していきたいと考えています。
今後ともよろしくお願いいたします。