T-CREATOR

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

よく使う物だけを抜粋したdockerコマンドの使い方とオプションの一覧まとめ
この記事は公開されてから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として利用します。

shell$ 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-docs-ja|Docker コマンド

記事Article

もっと見る