イメージ操作
イメージの取得
docker pull REPOSITORY[:TAG]
イメージ一覧
docker images
イメージのタグ付け(イメージ名変更)
docker tag リポジトリ名:タグ 新イメージ名:タグ
docker tag イメージID 新イメージ:タグ
元のイメージと新イメージの2つできる。
不要であれば、元のイメージを削除する。
イメージをファイルに出力
docker save IMAGE > filename.tar
ファイルをイメージとして取り込む
docker load < filename.tar
exportされたコンテナファイルをイメージとして取り込む
cat filename.tar | docker import - REPOSITORY[:TAG]
コンテナ操作
イメージからコンテナ起動
docker run -itd IMAGE
イメージからコンテナを起動して接続する
docker run -it IMAGE bash
イメージからコンテナを起動して接続し、コンテナに名前をつける
docker run -it --nae NAME IMAGE bash
ホストのディレクトリ(/host/var/www)を、コンテナのディレクトリ(/var/www/)とリンクする
dokcer run -it -v /host/var/www:/var/www イメージID bash
複数ディレクトリの場合は-vを複数かけばいいです。
docker run -it -v /host/var/www:/var/www -v /host/tmp:/var/tmp イメージID bash
ホストの8080番ポートへの通信をコンテナの80番ポートへ転送する
docker run -it -p 8080:80 IMAGE bash
ゲストのPRIVATE_PORTに指定したポートが、ホストのどのポートに転送しているか調べる
docker port CONTAINER
docker port CONTAINER PRIVATE_PORT
イメージからコンテナ作成
docker create IMAGE
コンテナを起動
docker start CONTAINER
コンテナを停止
docker stop CONTAINER
コンテナを削除
docker rm CONTAINER [CONTAINER...]
停止しているコンテナをすべて削除
docker container prune
起動しているコンテナに接続
docker exec -it CONTAINER /bin/bash
起動中のコンテナ一覧
docker ps
コンテナ一覧(停止中含む)
docker ps -a
コンテナからイメージの作成
docker commit CONTAINER REPOSITORY[:TAG]
コンテナ内のファイルをホストにコピーする(逆も可)
docker cp CONATAINER:filename ./
コンテナをファイル出力する
docker export CONTAINER > filename.tar
特別なコマンド
停止コンテナ・未利用イメージ・未利用ボリュームを一括削除
docker system prune
Docker 1.13以降で次を一括削除
- 停止しているコンテナすべて
- どのコンテナからもつかわれていないボリュームコンテナすべて
- どのコンテナとも紐付いていないイメージすべて