🐳

Dockerコマンド一覧

2021/11/30に公開約5,500字

Dockerコマンド一覧

よく使うものを抜粋

docker image

image pull

docker image pull イメージ名[:タグ]

dockerhubからイメージを取得する。

image ls

# イメージの一覧を表示
docker image ls
# 中間イメージを含めて全て表示
docker image ls -a
# イメージIDのみ表示
docker image ls -q

イメージの一覧を表示する。

image rm

docker image rm イメージ名

# 強制的に削除
docker image rm -f イメージ名
# 検索して削除する際の例
docker image rm $(docker image ls | grep キーワード)

イメージを削除する。

image prune

docker image prune

# 強制的に削除
docker image prune -a

コンテナから参照されていない未使用のイメージを全て削除する。

image inspect

docker image inspect イメージ名

イメージの詳細情報を表示する。

image build

docker image build ファイルパス

# 中間イメージを削除
docker image build --force-rm ファイルパス

指定したdockerfileからイメージをビルドする。

image tag

docker image tag 変更するイメージ名:タグ 変更後のイメージ名:タグ

イメージのタグ名を変更する。

docker container

container ls

# 実行中のコンテナ一覧を表示
docker container ls
# 全コンテナを表示
docker container ls -a
# コンテナIDのみ表示
docker container ls -q

コンテナの一覧を表示する。

container rm

docker image rm コンテナ名

# 実行中コンテナを強制的に削除
docker image rm -f コンテナ名
# コンテナに紐ついたボリュームを削除
docker image rm -v コンテナ名

コンテナを削除する。

container prune

docker image prune

実行されていないコンテナを全て削除する。

container run

docker container run [オプション] 生成元イメージ名:タグ

# 実行例
# - 指定したイメージがローカルに存在しない場合、dockerhubから取得
docker container run \
    && -itd \
    && -p 8080:80 \
    && --name test_container \
    && node:latest

新規コンテナをイメージから生成する。

オプション 説明
-d バックグラウンド実行
-e 変数名=値 環境変数を設定
-h ホスト名 ホスト名を指定
-p コンテナポート:ローカルポート ポートを割り当て
-u ユーザ名 ユーザ名
-v ボリューム ボリュームをマウント
-it 入出力
--name コンテナ名 コンテナ名
--rm 終了時中間コンテナを削除
--link 別コンテナへのリンク
--network ネットワーク名 ネットワーク定義へ接続
--restart 終了時に再起動

オプション一覧

container start

docker container start コンテナ名

コンテナを起動する。

container stop

docker container stop コンテナ名

コンテナを停止する。

container restart

docker container restart コンテナ名

コンテナを再起動する。

container exec

container exec [オプション] コンテナ名 コマンド

実行中のコマンドに対してコマンドを実行する。

オプション 説明
-d バックグラウンド実行
-e 変数名=値 環境変数を設定
-u ユーザ名 ユーザ名
-it 入出力

container cp

# コンテナのデータをローカルにコピー
docker container cp コンテナ名:パス ローカルパス
# ローカルのデータをコンテナにコピー
docker container cp ローカルパス コンテナ名:パス

コンテナとローカル間のファイルのコピーを行う。

container logs

docker container logs コンテナ名

# ログ出力の継続
docker container logs -f コンテナ名
# 詳細情報の表示
docker container logs --details コンテナ名

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

container stats

# コンテナ名省略時は全実行中コンテナが対象
docker container stats コンテナ名
# 全てのコンテナ
docker container stats -a コンテナ名
# コマンド実行時のステータス情報のみ表示(動的に表示しない)
docker container stats --no-stream

コンテナのリソース情報を動的に表示する。

container top

docker container top コンテナ名

コンテナのプロセス情報を表示する。

container diff

docker container diff コンテナ名

コンテナ内のファイルやディレクトリの変更箇所を確認する。

container inspect

docker container inspect コンテナ名

コンテナの詳細情報を表示する。

docker network

network create

docker network create [オプション] ネットワーク名

ネットワークを作成する。
詳細解説

network connect

docker network connect ネットワーク名 コンテナ名

コンテナとネットワークを接続する。

network disconnect

docker network disconnect ネットワーク名 コンテナ名

コンテナとネットワークを切断する。

network ls

docker network ls

# ネットワーク名のみ表示
docker network ls -q

ネットワークの一覧を表示する。

network inspect

docker network inspect ネットワーク名

ネットワークの詳細情報を表示する。

network rm

docker network rm ネットワーク名

ネットワークを削除する。

network prune

docker network prune

参照されていないネットワークを削除する。

docker volume

volume create

docker volume create [オプション]

# ボリューム名を指定
docker volume create \
    # ドライバ(デフォルトはlocal)
    && -d local \
    # ボリューム名(省略時は匿名ボリュームとなる)
    && --name ボリューム名

ボリュームを作成する。

volume ls

docker volume ls

# ボリューム名のみ表示
docker volume ls -q

ボリュームの一覧を表示する。

volume inspect

docker volume inspect ボリューム名

ボリュームの詳細情報を表示する。

volume rm

docker volume rm ボリューム名

ボリュームを削除する。

volume prune

docker volume prune

参照されていないボリュームを削除する。

docker search 検索値

dockerhub上のイメージを検索する。

docker save

docker save イメージ名[:タグ] > 出力ファイル名

コンテナのベースイメージとレイヤーの情報を全てtarファイルに出力する。
saveではベースとなるイメージとレイヤーを保存する。

docker export

docker export コンテナ名 > 出力ファイル名

コンテナの最終的な内部構成をtarファイルに出力する。
exportで出力したファイルは新規イメージとなる。

docker load

docker load < ファイル名

saveコマンドで保存したファイルを取り込む。
loadで取り込んだイメージはベースイメージやレイヤなどの履歴情報を持つが容量が大きい。

docker import

docker import ファイル名

exportで出力したファイルを取り込む。
importで取り込んだイメージはベースイメージやレイヤの履歴情報を持たない新規のイメージとなる。
容量は軽いがチーム間での共有に向かない。

参考

公式マニュアル

Discussion

ログインするとコメントできます