環境はMac。まあ、他でも同じでしょうけど。
基本操作
インストール
ここからダウンロードしてインストールするだけ。
イメージの取得
目的に報じて取ってくる。centosとかは標準である。例えばsqlserverとかだと、microsoft/mssql-server-linuxといった感じでリポジトリ名/イメージ名という感じ。
docker pull centos
docker pull ubuntu
イメージの確認
取得したイメージはimagesで取得できる。
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 98d35105a391 2 weeks ago 193 MB
ubuntu latest 0ef2e08ed3fa 4 weeks ago 130 MB
centosとubuntuのイメージがある。
イメージの削除
利用しなくなったイメージはIMAGE_IDを指定することで削除可能。
docker rmi IMAGE_ID
コンテナが動いていると削除できない。その場合はforceオプションを付ける。
コンテナの起動
イメージを指定してコンテナを起動します。
docker run -itd --name centos1 centos
docker run -itd centosとしてもいいが、名前がランダムに付く。
docker run -itd --name centos1 centos /bin/bashなどとしてシェル指定できる。
-iはinteractive。ホストの入力をゲストに伝える。
-tはtty。ホストの入力をゲストのttyに伝える。
-dはバックグラウンド。-dがないとexitするとコンテナも停止する。
-pでポートのマッピングもできる。-p 8888:80とすると、ホストの8888をコンテナの80にマップできる。
コンテナへのログイン
docker exec -it centos1 /bin/bash
シェルを指定しないとエラーとなる。
コンテナの停止
docker stop CONTAINER_ID_or_NAMES
停止中のコンテナの再スタート
docker start CONTAINER_ID_or_NAMES
動いているコンテナの確認
動いているコンテナのみ表示される。
docker ps
全てのコンテナの確認(停止等含む)
停止中のコンテナも見たい場合はこちら。
docker ps -a
コンテナのリソース使用状況の確認
docker stats
コンテナの削除
docker rm CONTAINER_ID_or_NAMES