概要
Dockerを使い始めて、1年ほど経っていますが、
よく使うコマンドがだいたい定まってきています。
今回はそのコマンドについて、まとめたいと思います。
Dockerコマンド一覧
コンテナ/イメージの確認
コンテナの一覧確認
# 稼働しているコンテナの確認 $ docker ps # 稼働停止しているコンテナも含めてすべてのコンテナの確認 $ docker ps -a
イメージの一覧確認
$ docker images
イメージの取得
イメージをDocker hubから落とす
$ docker pull <落としたいイメージ> (例) $ docker pull golang:latest
Dockerfileからイメージの作成
$ docker build <docker file名>
コンテナからイメージ作成
$ docker commit <コンテナのID>
タグ付け
イメージにタグをつける
$ docker tag <imageのID> <リポジトリ名>:<タグ名>
一つのイメージに対し、複数のタグをつけることができます。
タグをつけるイメージの指定方法として、IDを使用していますが、タグでの指定も可能です。
$ docker tag <リポジトリ名>:<タグ名> <新規のリポジトリ名>:<新規のタグ名>
※これはタグを付け替えているわけではなく、新しくタグを追加しています。
コンテナの起動
コンテナの起動(コンテナの新規作成、稼働)
$ docker run <リポジトリ名>:<タグ名>
オプション
- -p オプション:ポートフォワード
- -v オプション:ディレクトリをマウント
- -d オプション:デタッチ。コンテナをバックグラウンドで実行
- -it オプション:ホストPCの入力をコンテナの標準出力へ、コンテナの入力をホストPCの標準出力へつなぐ
(例) $ docker run -p 52525:80 -v ~/dev/app:/src/app -d <リポジトリ名>:<タグ名> (訳) ・<リポジトリ名>:<タグ名>のイメージを基にコンテナの作成 ・-pオプションにより、ホストPCのポート52525番をコンテナの80番ポートへフォワード ・-vオプションにより、ホストPCの「~/dev/app」ディレクトリに、コンテナの「/src/app」ディレクトリをマウント ・-d オプションにより、コンテナから出る(制御対象をホストPCへ)
コンテナの起動(既存のコンテナを稼働)
$ docker start <コンテナのID>
コンテナ/イメージの削除
イメージを削除
<リポジトリ名>:<タグ名>で削除対象を選択
$ docker rmi <リポジトリ名>:<タグ名>
この選択方法の場合、イメージではなくタグが削除されます。
削除対象となるタグがついているイメージが、当該タグしか持たない場合、イメージも削除されます。
イメージIDで削除対象を選択
$ docker rmi <イメージID>
複数のタグが付いていたとしても、当該イメージについているタグとイメージが全て削除されます。
コンテナの動作停止
$ docker stop <コンテナのID>
コンテナを削除
$ docker rm <コンテナのID>
その他
コンテナのリネーム
$ docker rename <現在のコンテナ名> <新しいコンテナ名>
さいごに
これまでの記事とは異なり、説明を少なめで、コマンドを列挙してみました。
Windows10 Homeをご使用されている場合、ポートフォワーディングやマウントについて、上記のコマンドだけでなく、特別な手順がありました。
以下の記事に掲載しておりますので、ご参考ください。
Docker Toolboxで"C/User/"以外のディレクトリにマウントする方法【Windows 10 Home】
Windows 10 Home上のDocker環境における、ディレクトリをマウントする方法を紹介します。Windows 10 HomeユーザがDockerを使う際、普通にDocker環境構築をするだけでは、ディレクトリをマウントすることはできません。そこで。マウントするための設定手順について紹介します。
Docker Toolboxでポートフォワーディング!【Windows 10 Home】
こんにちは!zhackです!
最近、jupyter notebookのサーバやローカル環境にWebサーバを立てたいなぁと思うことがあり、
docker runコマンドでポートフォワーディングしてみました。
アクセスしてみると、...
ではでは!
コメント