- Published on
Dockerコマンド簡易チートシート
- Authors
- Name
- Shou Arisaka nyapp.buzz/shou
- short bio
- Z世代の情報技術者。Next.jsで自作SNSを個人開発中。
dockerも大分馴染んできたので,簡単な概要と,よく使うコマンドのリスト,使い方,オプション,簡単な例を書き留めておく.
Dockerの概要
簡単に壊せる環境が作れる優れもの. 例として,得体の知れないコードを実行したり,データのクラッキングが前提のコードを実行したりということが容易にできる. Gitのスターの少ないライブラリを試したい時や,ホストに入れる前に動作を確認したい/ホストで不具合でたのでセーフモード的に検証したい,など.
dockerの上にimage(ubuntu/ruby etc)があって,そのimageからContainerを作る.ContainerはubuntuなどのOSからrubyなど単純な実行環境まで様々. imageの作り方として,docker hubからpull
するか,Dockerfileを作成し,docker build .
する方法がある.
しかしながらwindowsだとマウントやその他多点においてLinuxとの相違が点在する. dockerコマンドをpowershellから実行することは通常できなく,docker tool boxの専用シェルでのみ実行可能.
基本コマンド
Dockerはコンテナ技術を利用してアプリケーションを効率的に管理・展開できるツールです。本記事では、日常的に使用される主要なDockerコマンドを一覧でまとめています。各コマンドの簡単な説明と使用例も記載しているため、初心者から中級者まで幅広く参考にしていただけます。
attach
起動しているコンテナに接続する
docker attach <container>
参考: start
, ps
build
Dockerfileからイメージをビルドする
カレントディレクトリのDockerfileを使用してイメージを作成します。
docker build .
docker build -f /path/to/a/Dockerfile .
docker build -t shykes/myapp .
commit
コンテナの変更内容をもとに新しいイメージを作成する
docker commit <container> <new_image_name>
cp
コンテナとローカルファイルシステム間でファイルやフォルダをコピーする
ローカルからコンテナへファイルをコピーする例:
docker cp ./localfile <container>:/path/to/destination
コンテナからローカルにファイルをコピーする例:
docker cp <container>:/path/to/file ./local/destination
create
新しいコンテナを作成する
docker create <image>
diff
コンテナのファイルシステム上の変更を検査する
docker diff <container>
events
サーバーからリアルタイムイベントを取得する
docker events
exec
起動中のコンテナ内でコマンドを実行する
docker exec <container> <command>
インタラクティブなシェルセッションを開始する例:
docker exec -it <container> /bin/bash
export
コンテナのファイルシステムをtarアーカイブとしてエクスポートする
docker export <container> > /path/to/tar/file.tar
history
イメージの履歴を表示する
docker history <image>
images
ローカルに保存されているイメージの一覧を表示する
docker images
import
tarボールからファイルシステムイメージをインポートする
docker import /path/to/tar/file.tar
info
システム全体の情報を表示する
docker info
inspect
Dockerオブジェクトの詳細情報を表示する
docker inspect <container|image>
kill
起動中のコンテナを強制終了する
docker kill <container>
load
tarアーカイブからイメージをロードする
docker load < /path/to/tar/file.tar
login
Dockerレジストリにログインする
docker login
logout
Dockerレジストリからログアウトする
docker logout
logs
コンテナのログを取得する
docker logs <container>
pause
コンテナ内の全プロセスを一時停止する
docker pause <container>
port
コンテナのポートマッピングを表示する
docker port <container>
ps
起動中のコンテナの一覧を表示する
docker ps
全コンテナの一覧を表示する場合:
docker ps -a
pull
レジストリからイメージまたはリポジトリを取得する
docker pull <image>
push
イメージまたはリポジトリをレジストリにプッシュする
docker push <image>
rename
コンテナの名前を変更する
docker rename <container> <new_name>
restart
コンテナを再起動する
docker restart <container>
rm
コンテナを削除する
docker rm <container>
全てのコンテナを削除する場合:
docker rm $(docker ps -aq)
rmi
イメージを削除する
docker rmi <image>
全てのイメージを削除する場合:
docker rmi $(docker images -aq)
run
新しいコンテナでコマンドを実行する
docker run <options> <image> <command>
save
イメージをtarアーカイブとして保存する
docker save <image> > /path/to/tar/file.tar
search
Docker Hubでイメージを検索する
docker search <term>
start
停止しているコンテナを起動する
docker start <container>
stats
コンテナのリソース使用状況をリアルタイムで表示する
docker stats
stop
コンテナを停止する
docker stop <container>
tag
既存のイメージに新しいタグを付ける
docker tag <existing_image> <new_image>
top
コンテナ内の実行中のプロセスを表示する
docker top <container>
unpause
一時停止したコンテナのプロセスを再開する
docker unpause <container>
update
コンテナの設定を更新する
docker update <options> <container>
version
Dockerのバージョン情報を表示する
docker version
wait
コンテナが停止するまで待機し、終了コードを表示する
docker wait <container>
このチートシートを参考に、Dockerのコマンド操作を効率化できます。公式ドキュメントやリファレンスも参照しながら使うことをおすすめします。
15歳でWordPressサイトを立ち上げ、ウェブ領域に足を踏み入れる。翌年にはRuby on Railsを用いたマイクロサービス開発に着手し、現在はデジタル庁を支えたNext.jsによるHP作成やSaaS開発のプロジェクトに携わりながら、React.js・Node.js・TypeScriptによるモダンなウェブアプリの個人開発を趣味でも行う。
フロントエンドからバックエンドまで一貫したアジャイルなフルスタック開発を得意とし、ウェブマーケティングや広告デザインも必要に応じて担当、広告運用・SEO対策・データ分析まで行う低コストかつ高品質な顧客体験の提供が好評。
国内外から200万人を超える人々に支えられ、9周年を迎えるITブログ「yuipro」の開発者、デザイナーでありライター。現在ベータ段階の自作SNS「nyapp.buzz」を日本一の国産SNSとするべく奮闘中。