Dockerのバージョン確認
docker version
Dockerの環境情報
[root@VM-16-2-centos ~]# docker info
コンテナ: 2
実行中: 0
一時停止: 0
停止済み: 2
イメージ: 0
サーバーバージョン: 18.06.0-ce
ストレージドライバー: overlay2
バックアップファイルシステム: extfs
d_typeサポート: true
ネイティブオーバレイディフ: true
ログドライバー: json-file
cgroupドライバー: cgroupfs
プラグイン:
ボリューム: local
ネットワーク: bridge host macvlan null overlay
ログ: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: アクティブでない
ランタイム: runc
デフォルトランタイム: runc
Initバイナリ: docker-init
containerdバージョン: d64c661f1d51c48782c9cec8fda7604785f93587
runcバージョン: 69663f0bd4b60df09991c08812a60108003fa340
initバージョン: fec3683
セキュリティオプション:
seccomp
プロファイル: default
カーネルバージョン: 3.10.0-1160.11.1.el7.x86_64
オペレーティングシステム: CentOS Linux 7 (Core)
OSType: linux
アーキテクチャ: x86_64
CPU: 2
総計メモリ: 3.7GiB
名前: VM-16-2-centos
ID: X4IO:X7A6:55H6:3LY4:NRR2:UXTF:3RH6:246G:YMP4:R26D:MRCN:ZSVX
Dockerルートディレクトリ: /var/lib/docker
デバッグモード (クライアント): false
デバッグモード (サーバー): false
レジストリ: https://index.docker.io/v1/
ラベル:
Experimental: false
不安全なレジストリ:
127.0.0.0/8
レジストリミラー:
https://lp4ub15b.mirror.aliyuncs.com/
ライブリスタート有効化: false
コンテナが2つ存在していることを確認できます。コンテナの一覧を確認するには docker container ls -a を使用します。
コンテナの操作ログ取得
# 実時イベントの取得
docker events
# 2022年1月27日以降のmysql関連イベントを表示
docker events --since 2022-01-27 -f image=mysql
イメージの一覧表示
# イメージの一覧を表示
docker images
# 出力例
REPOSITORY TAG IMAGE ID CREATED SIZE
nacos/nacos-server latest bdf60dc2ada3 4 months ago 1.05GB
mysql 5.7.25 98455b9624a9 2 years ago 372MB
# 一覧の項目説明
REPOSITORY: イメージのリポジトリ名
TAG: イメージのタグ
IMAGE ID: イメージのID
CREATED: 作成日時
SIZE: イメージのサイズ
# 全てのイメージを表示
docker images -a
# 画像IDのみ表示
docker images -q
Docker Hubからイメージ検索
docker search mysql
イメージのダウンロード
# mysqlイメージをダウンロード
docker pull mysql
# 特定のmysqlバージョンをダウンロード
docker pull mysql:5.7
イメージの削除
# 特定イメージを削除
docker rmi -f 镜像ID
# 全てのイメージを削除(注意:全てのイメージが削除されます)
docker rmi -f $(docker images -aq)
コンテナの作成と起動
docker run [オプション] イメージ名
# オプション説明
--name="Name" コンテナの名前を指定
-d バッキグラウンドで実行
-it インタラクティブモードでコンテナ内に入る
-p ホストとコンテナのポートをマッピング
# 例
docker run -it centos /bin/bash
コンテナから退出
# コンテナ停止後退出
exit
# コンテナを停止せずに退出
Ctrl+P+Q
実行中のコンテナ確認
docker ps
全てのコンテナ確認
docker ps -a
コンテナの削除
# 特定コンテナを削除
docker rm 容器ID
# 全てのコンテナを削除
docker rm -f $(docker ps -aq)
docker ps -a -q | xargs docker rm
コンテナの起動
docker start 容器ID
コンテナの再起動
docker restart 容器ID
コンテナの停止
docker stop 容器ID
コンテナの強制停止
docker kill 容器ID
その他の基本コマンド
コンテナのログ確認
docker logs
# 最後の10行を表示
docker logs -f -t --tail 10 容器ID
# 説明
-f: リアルタイムでログを表示
-t: 日時を表示
--tail number: 表示するログ行数
コンテナ内部のプロセス確認
docker top 容器ID
イメージの詳細情報取得
docker inspect 容器ID
実行中のコンテナに入る
# 新しいターミナルを開いてコンテナに入る
docker exec -it 容器ID /bin/bash
# 現在のターミナルでコンテナに入る
docker attach 容器ID
コンテナ内のファイルをホストにコピー
docker cp 容器ID:/パス/ファイル名 /ホストパス/
# 例
[root@VM-16-2-centos ~]# docker cp 5120ed565cdd:/home/test.java /root/