Docker コマンド実用チートシート
Docker は、開発者がアプリケーションとその依存パッケージをポータブルなイメージにパックし、一般的な Linux または Windows マシンに配布して仮想化を実現できるオープンソースのアプリケーションコンテナエンジンです。コンテナは完全にサンドボックス化され、相互にインターフェースを持ちません。
一般的な使用法
コンテナをバックグラウンドで起動する
docker run -d jenkins対話型コンテナを起動する
docker run -it ubuntu bash停止時に自動的に削除されるコンテナを起動する
docker run --rm ubuntu bash ポートマッピングを指定してコンテナを起動する
docker run -p 80:80 -d nginx 名前付きコンテナを起動する
docker run --name mydb redis 停止しているコンテナを起動する
docker start mydb コンテナを停止する
docker stop mydbコンテナを起動し、メタデータを追加する
docker run -d \ label=traefik.backend=jenkins jenkinsイメージの構築 (Build Images)
カレントディレクトリの Dockerfile からイメージを構築する
docker build --tag myimage . キャッシュを使用せずにイメージを強制的に再構築する
docker build --no-cache . コンテナをイメージに変換(コミット)する
docker commit c7337 myimage 未使用のイメージをすべて削除する
docker rmi $(docker images -q -f "dangling=true")デバッグ (Debug)
実行中のコンテナにログインする
docker exec -it c7337 docker実行中のデーモンコンテナのアクティビティログを表示する
docker logs -f c7337コンテナの公開ポートを表示する
docker port c7337ボリューム (Volumes)
ローカルボリュームを作成する
docker volume create --name myvol コンテナ起動時にボリュームをマウントする
docker run -v myvol:/data redisボリュームを削除する
docker volume rm myvol ボリュームを一覧表示する
docker volume lsローカルネットワークを作成する
docker network create mynet 起動時にコンテナをネットワークに接続する
docker run -d --net mynet redisコンテナを指定したネットワークに接続する
docker network connect mynet c7337 コンテナをネットワークから切断する
docker network disconnect mynet c7337コンテナ管理
実行中のコンテナを一覧表示する
docker psすべてのコンテナ(実行中および停止中)を一覧表示する
docker ps -aコンテナのメタデータを検査する
docker inspect c7337ローカルにあるすべての利用可能なイメージを一覧表示する
docker images停止しているすべてのコンテナを削除する
docker rm $(docker ps --filter status=exited -q) 特定のラベルを持つすべてのコンテナを一覧表示する
docker ps --filter label=traefik.backend特定のメタデータを持つ実行中のコンテナをクエリする
docker inspect -f '{{ .NetworkSettings.IPAddress }}' c7337説明
イメージ名
redis, jenkins, nginxコンテナ名またはコミット ID
mydb # コンテナ名
c7337 # コミット ID