コンテナ
コンテナを起動(例:ubuntuイメージで起動)
$ docker run ubuntu
オプション
$ docker run -d -P --name nnnn ubuntu
-d:ターミナルのデタッチ
-p 8080:80:ポートを指定
-P:ポートをランダムに割り振る
-name nnnn:コンテナに名前をつける(未指定だとランダムな名前)
ubuntu:イメージの名前例
コンテナにホスト(ローカル)のディレクトリをマウント
$ docker run -v ホストのパス:コンテナのパス イメージ名
コンテナを停止
$ docker stop xxxxx
(xxxxxxxは, idかname、docker ps で調べる)
コンテナを一括停止
$ docker stop $(docker ps -q)
コンテナを削除(xxxxxxxは, idかname、docker ps で調べる)
$ docker rm xxxxxx
コンテナを起動して終了時に自動的に削除
$ docker run --rm ubuntu
起動中のコンテナ一覧
$ docker container ls
起動中のコンテナ一覧 実行済のものを含む
$ docker container ls -a
(old) $ docker ps -a
起動中のコンテナ一覧 IDのみ表示
$ docker container ls -a -q
(old) $ docker ps -a -q
起動中のコンテナ一覧 status=exitedでフィルター
$ docker container ls -a -f status=exited
(old) $ docker ps -a -f status=exited
実行済(status=exited)のコンテナを一括削除
$ docker rm $(docker ps -a -q -f status=exited)
実行済のコンテナ一括削除(別のやり方)
$ docker container prune
コンテナに入る
$ docker exec -it containerId sh
- i: 標準入力を開き続ける。
- t: 疑似ttyを割りあてる。
- it: 標準入力を開き続け、そこを操作出来るようにする = 手元の環境で、docker内入力ができるようにする
(exit で終了)
イメージ
イメージの取得(例:ubuntu)
$ docker pull ubuntu
取得したイメージの一覧
$ docker images
イメージの削除(例:ubuntu)
$ docker rmi ubuntu
イメージの全削除
$ docker images -aq | xargs docker rmi
ボリューム
ボリューム一覧
$ docker volume ls
ボリュームを消す
$ docker volume rm xxxxx