実行環境操作
Docker Toolbox参照
イメージ操作
コマンド |
機能 |
備考 |
docker images |
Dockerイメージ一覧 |
docker image ls |
docker image pull [イメージ名]:[タグ名] |
DockerイメージPULL |
|
docker build [イメージ名]:[タグ名] [Dockerfileパス] |
DockerfileからDockerイメージ作成 |
|
docker rmi [イメージID] |
Dockerイメージ削除 |
|
docker rmi -f [イメージID] |
Dockerイメージ強制削除 |
|
docker rmi $(docker images -q) |
Dockerイメージ全削除 |
|
docker save イメージ名 > ファイル名.tar |
Dockerイメージをファイル出力 |
|
docker load < ファイル名.tar |
ファイルからDockerイメージを取り込み |
|
docker tag [既存タグ名] [追加タグ名] |
タグを追加 |
|
docker rmi [既存タグ名] |
タグを削除 |
|
コンテナ
操作コマンド
コマンド |
機能 |
備考 |
docker run [イメージ名]:[タグ名] |
Dockerコンテナ起動 |
docker container run |
docker start [イメージ名]:[タグ名] |
停止中のコンテナを起動 |
docker container start |
|
docker stop [イメージ名]:[タグ名] |
実行中のコンテナを停止 |
docker container stop |
|
docker rm [コンテナ名] |
コンテナ削除 |
docker container rm |
docker rm $(docker ps -q -a) |
コンテナ全削除 |
docker container prune |
docker atacch [コンテナID/コンテナ名] |
コンテナ接続 |
|
docker exec [コンテナID/コンテナ名] |
コンテナ接続 |
|
docker cp コピー元パス [コンテナID/コンテナ名]:コピー先パス |
ホストからコンテナへファイルコピー |
docker cp db:/schema.sql ./database/sqls/ |
docker cp [コンテナID/コンテナ名]:コピー元パス コピー先パス |
コンテナからホストへファイルコピー |
docker cp ./database/sqls/schema.sql db:/ |
docker commit [コンテナ名] [リポジトリ名]:[新タグ名] |
コンテナ→イメージ |
docker commit centos7 centos:new_centos7 |
オプション
オプション |
機能 |
備考 |
-t |
Dockerコンテナの標準出力とホストの標準出力を同期 |
|
-i |
Dockerコンテナの標準入力とホストの標準入力を同期 |
|
-it |
ホストで入力したキー入力がDockerコンテナで入力、実行され、Dockerコンテナで表示される実行結果がホストに表示される |
|
-d |
デタッチモードに(コンテナがバックグラウンドで起動される) |
docker run XXX ~ -d |
-p |
ホストのポート番号とDockerのポート番号を同期コンテナ作成時のみ |
-p 8080:80 |
-v |
ホストのディレクトリとDockerのディレクトリを同期 |
-v ボリューム名:/test/ |
-- name [名称] |
コンテナに名前を付ける |
docker run -- name XXX centos:centos7 |
-- privileged ~ /sbin/init |
特権モードで起動systmctl実行でき可能に |
docker run -d -it -p ~ -- privileged ~ /sbin/init |
-e |
環境変数をセット |
-e PORT=80 |
状態確認コマンド
コマンド |
機能 |
備考 |
docker ps |
Dockerコンテナ(実行中)一覧 |
docker container ls |
docker ps -a |
Dockerコンテナ(停止中含めて全て)一覧 |
|
docker stats [イメージ名]:[タグ名] |
コンテナのリソース使用状況を表示 |
docker container stats |
|
docker logs コンテナ名 |
ログ表示 |
|
docker inspect コンテナID |
コンテナ内設定表示 |
「Docker Inspectによる接続確認」参照 |
オプション
オプション |
機能 |
備考 |
-a |
全てを表示 |
docker images -adocker ps -a |
ボリューム
確認・操作コマンド
コマンド |
機能 |
備考 |
docker volume ls |
ボリューム表示 |
|
|
docker volume create -- name=ボリューム名 |
ボリューム作成 |
|
docker volume rm ボリューム名 |
ボリューム削除 |
|
オプション
オプション |
機能 |
備考 |
-- volumes-from |
ボリュームをマウントしたコンテナを参照する |
-- volumes-ftom コンテナ名 |
ネットワーク
「Docker network」参照
操作例
ubuntuコンテナ起動
winpty docker run
-d
--
volumes-from ボリューム名
--
name コンテナ名
-it ubuntu
sh
apacheコンテナ起動
docker run
-p 80:80
-v ./html:/usr/local/apache2/htdocs
--
name コンテナ名
-d httpd
busyboxコンテナ起動
docker run
-v ボリューム名:/var/lib/mysql/
--
name コンテナ名
busybox
エラー対応
メモリ不足時
proc_open(): fork failed - Cannot allocate memory
#/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
#/sbin/mkswap /var/swap.1
#/sbin/swapon /var/swap.1