やる事
Docker, docker-composeをいじる時に、初歩的な事なのに毎回リファレンスや誰かの記事を見ている気がしたので、基本的な事全てを一瞬で把握できるように基本的な機能を表でまとめておきます。ほとんど自分用です。
※網羅出来ていないので、随時更新していきます。
環境
docker 20.10.7
docker-compose 1.29.2
※2021年7月5日現在の最新バージョンです。
Dockerコマンド
使用イメージ、コンテナ名など
今回は、pythonのイメージを使用しコンテナ名はmycontainerとします。
種類
使用イメージ
タグ
備考
イメージ
python
latest
Dockerhubのpythonのイメージ。最近は軽いと評判のalpine多め。
コンテナ名
mycontainer
---
コンテナ名です
構築・起動系
コマンド名
イメージ作成
コンテナ作成
起動
停止
例
備考
pull
〇
×
×
×
docker pull python
タグ指定無しでlatestを取得。デフォルトはdockerhubからだが、別のレジストリからも取得可能。
build
〇
×
×
×
docker build -t python:latest .
Dockerfileからイメージを構築。-tオプションでimage名を指定出来る。
create
×
〇
×
×
docker create -t -p 8000:8000 --name myproject -v C:\Users\user\myproject:/home/myproject python:latest
コンテナを作成する。-tで疑似ターミナルを割り当て起動し続ける。-pでホスト側に公開するポートを指定、-vでマウントするパスを指定、nameでコンテナ名指定。最後にオプション無しでイメージを指定。
run
×
〇
〇
×
docker run (createとオプションはほぼ同じ)python:latest
起動までしてくれる。オプションはcreateに似てる。
start
×
×
〇
×
docker start mycontainer
指定コンテナの起動
stop
×
×
×
〇
docker stop mycontainer
指定コンテナの停止
pause
×
×
×
〇※1
docker pause mycontainer
※1.指定コンテナの一時停止
unpause
×
×
〇※2
×
docker unpause mycontainer
※2.一時停止した指定コンテナの再開
restart
×
×
〇
×
docker restart mycontainer
指定コンテナの再起動
kill
×
×
×
〇※4
docker kill mycontainer
※4. 指定のコンテナを停止する。-sでシグナルも指定出来る。デフォルトはSIGKILL。
接続系
コマンド名
接続
切断
例
備考
exec
〇
×
docker exec -it mycontainer bash
bashでエラー吐くなら、shか/bin/shを使用する。
確認系
コマンド名
確認内容
例
備考
ps
コンテナ一覧
docker ps -a
-aで全てのコンテナを表示。オプション無しで起動しているものを表示。
images
イメージ一覧
docker images
-aで中間コンテナも表示する。オプション無しだと中間コンテナは非表示。
stats
リソース状態
docker stats mycontainer
コンテナのリソース状態をリアルタイム監視出来る。コンテナ指定無しで-aを付けると全てのコンテナが対象。
diff
ファイルの変更分の差分
docker diff mycontainer
ファイルシステムで変更したところを出力してくれる。
top
実行中のプロセス
docker top mycontainer
コンテナで実行中のプロセスを表示。
info
システムの広範囲な情報
docker info
システム情報を表示。
logs
コンテナのログの出力
docker logs mycontainer -f
-fでリアルタイムで出力し続ける。
history
イメージの履歴の出力
docker history python:latest
イメージの履歴の出力。
search
イメージの検索
docker search --limit=100 django
djangoという単語でDocker Hubからイメージを検索する。--limitで出力結果の最大数を決められる。
events
リアルタイムでイベントの監視
docker events
dockerシステムのイベントを監視する。オプションで時間指定や、出力結果のフィルタも指定可能。
整理系
コマンド名
用途
例
備考
rm
コンテナ削除
docker rm mycontainer
-fで強制的に削除、-lでリンクを削除、-vで紐づけられたボリューム削除。
rmi
イメージ削除
docker rmi python:latest
-fで強制的に削除
rename
コンテナ名変更
docker rename mycontainer newMyContainer
古い名前の次に新しい名前を入力する。
tag
イメージにタグ付け
docker tag ed45d5bb6847 python:mypython
docker tag 【ソース】 【ターゲット】で指定する。ソースのところはイメージ名でも可、ターゲットはプライベートリポジトリとかも可。
docker-composeコマンド
例としてdocker-compose.ymlのサービス名は以下の様にします。
docker-compose.yml
version : ' 3.8'
services :
api :
# 省略
web :
# 省略
全体を通してdocker-composeコマンドはdocker-compose.ymlのservicesのものを操作対象としている。
この場合だと、apiとwebの事。
構築・起動系
コマンド名
イメージ作成
コンテナ作成
起動
停止
例
備考
pull
〇
×
×
×
docker-compose pull
全てのサービスのイメージを取得する。サービス名指定も出来る。
build
〇
×
×
×
docker-compose build
今いるディレクトリのdocker-compose.ymlを元にビルドする。
up
〇
〇
〇
×
docker-compose -f docker-compose-dev.yml up -d
-fでファイル名指定出来る。-dでバックグラウンドでコンテナを起動する。デフォルトでイメージが無かったらビルドしてくれるが、--buildオプション付けてと怒られる。ビルドしない指定なども可能。
down
×
×
×
〇※1
docker-compose down
※1. コンテナの停止~削除 まで行う。起動してなかったら削除のみ行う。
start
×
×
〇
×
docker-compose start
既存の指定コンテナ起動
stop
×
×
×
〇
docker-compose stop
既存の指定コンテナ停止
restart
×
×
〇
×
docker-compose restart
停止中あるいは実行中の既存の指定コンテナの再起動をする。
pause
×
×
×
〇※2
docker-compose pause
※2. 起動中のコンテナを一時停止状態にする。
unpause
×
×
〇※3
×
docker-compose unpause
※3. 一時停止状態のコンテナを起動する。
kill
×
×
×
〇※4
docker-compose kill
※4. 実行中のコンテナを強制終了させる。-sオプションでコンテナに送信するシグナルを指定出来る。デフォルトはSIGKILL。
接続系
コマンド名
接続
切断
例
備考
exec
〇
×
docker-compose exec api bash
docker execと同じ。こちらはサービス名を指定して接続できる。-Tオプションは無くても平気。bashでエラー吐くなら、shか/bin/shを使用する。
起動接続
コマンド名
コンテナ起動
接続
例
備考
run
〇
〇
docker-compose run --rm api bash
1つのサービスに対して、1コマンドを実行出来る。この場合だとapiというサービスにbashコマンドを実行し、起動から接続まで行える。抜け出すとコンテナは停止状態になっている。--rmオプションで起動したらコンテナを削除する。付けないとrunする度にコンテナが生成されるため付けておく。
確認系
コマンド名
確認内容
例
備考
ps
コンテナ一覧
docker-compose ps
指定のコンテナ一覧
port
公開ポート
docker-compose port api 8000
「サービス名 port」と指定すると公開されるip:portを表示。
logs
ログ
docker-compose logs -f
-fでリアルタイムでログを監視出来る。
images
イメージ一覧
docker-compose images
生成済みコンテナで利用しているイメージ一覧を表示。
config
Composeファイルの検証
docker-compose config --services
--servicesでサービス一覧のみを表示。オプション無しで検証して表示。
top
実行中のプロセス
docker-compose top
実行中のプロセスの表示。
help
ヘルプの表示
docker-compose help
ヘルプ表示
events
各コンテナのイベントの監視
docker-compose events
入力すると受信状態になり、別端末からコマンドを打ったりするとイベントが確認出来る。
整理系
コマンド名
削除対象
例
備考
rm
コンテナ
docker-compose rm
停止中のコンテナの削除
その他
コマンド名
内容
例
備考
bundle
DABの作成
docker-compose bundle
Composeファイルから分散アプリケーションバンドル(Distributed Application Bundle;DAB)を作成する。
Author And Source
この問題について(Docker, docker-composeコマンド一覧表), 我々は、より多くの情報をここで見つけました
https://qiita.com/kRysTasis/items/e07b839663f78e6c271c
著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .