🐯 docker run/start/stop/rm/commitの概念図 docker run/start/stop/rm/commit
の役割の概念図です。
参考元:Dockerにおけるコンテナのライフサイクル
😀 docker ps docker ps
はDockerコンテナの状態を確認するコマンドです。
オプション
説明
-a
ローカルで起動されたDockerコンテナをすべて表示
-f
条件を満たすコンテナだけにフィルタリング
docker ps --filter "label=color"
🗻 docker pull docker pull
はDocker Hubやほかのレジストリからイメージを取得するコマンドです。
docker pull [オプション] イメージ名[:タグ|@イメージのハッシュ値]
オプション
説明
--all-tags
すべてのタグ付けされたイメージを取得する
--disable-content-trust
イメージのチェックをスキップする
実行例 docker pull debian:jessie
🍮 docker images docker images
はDockerイメージの一覧を表示するコマンド。
docker images [オプション] [レポジトリ]
🐠 docker build docker build
はDockefileからDockerイメージを構築するためのコマンド。
docker build [オプション] パス/URL
オプション
意味
--build-arg
Dockerfile内でARG
で定義できる変数を指定
-f /パス/to/Dockerfile
Dockerfileのファイルパスを指定
--no-cache=true
build時にキャッシュを使わない
--pull=true
FROMで指定したベースイメージを最新を取得する
--rm=true
ビルド成功後中間コンテナを削除
--tag=xxx
、-t xxx
タグの指定
🍄 docker run docker run
はDockerコンテナを起動するためのコマンド。
docker run [オプション] イメージ [コマンド] [引数...]
オプション
意味
--add-host サーバ名:IP
Dockerコンテナの/etc/hostsを追記
-a
STDIN/STDOUT/STDERRを出力する
-e 環境変数
環境変数をDockerコンテナに渡す
--entrypoint コマンド
ENTRY_POINTを指定
-f 環境変数ファイル
環境変数をファイルに設定してDockerコンテナに渡す
-i
ホストの入力をコンテナの標準出力をつなげる
--log-driver=DRIVER
ログドライバの指定。詳細は ロギング・ドライバの設定
-name
Dockerコンテナに名前をつける
-pホストのポート:コンテナのポート
ホストのポートとコンテナのポートをつなげる
-rm
コンテナの終了時にコンテナを自動で削除する
-t
コンテナの標準出力とホストの出力をつなげる
docker imageを立ち上げてbashを使う Docker imageを立ち上げてbashを使うための手順です。ENTRY_POINTが設定されている場合は応答がなくなるので次のように指定します。
docker run -it --rm --entrypoint /bin/bash
-itオプションの概念図 -it
オプションをつけるとターミナルでコンテナを実行できます。
出典: Docker - docker runのオプションについて(19477)|teratail
🐹 docker exec docker exec
はDockerコンテナに追加のプロセスを実行させるコマンドです。ターミナルへのアクセスなどを行います。
docker exec [オプション] コンテナ名 コマンド [引数...]
コンテナのshellに接続 docker exec -it コンテナ名 /bin/bash
オプション
説明
-i
標準入力(STDIN)を開いたままにする
-t
擬似ttyに接続する。ディスプレイ(STDOUT)をつなぐイメージ
🤔 docker attach Dockerコンテナに起動しているPID=1のプロセスの標準入力(STDIN)と、標準出力(STDOUT)に接続するコマンドです。exit
するとのそのプロセスも終了します。
docker attach [オプション] コンテナ名
exitするとPID=1のプロセスが終了するため、コンテナが停止します。
🗽 docker stop/kill docker stop
はコンテナプロセスにSIGTERM
を送信後、一定時間が経過したらSIGKILL
を送信する。
docker stop [オプション] コンテナ名 -f 待ち秒数
docker kill
はコンテナプロセスにSIGKILL
を送信する。
docker kill [オプション] コンテナ名
🐡 docker start docker stop
は停止したコンテナを再起動するためのコマンド。
docker start [オプション] コンテナ名
😸 docker commit Docker run & stopで停止したコンテナファイルを新しいイメージにするためのコマンドです。
docker commit [オプション] コンテナ名
通常はイメージの管理にDockerfileを使うのが望ましいので、デバッグ用、作業中のデータセットを別のサーバに持っていくために利用します。
🎃 docker search docker search
はDocker Hub上のDockerイメージを検索するコマンド。
docker search [オプション] 検索ワード
🍣 docker rmi docker rmi
はDockerイメージを削除するコマンド。
😎 docker login docker login
はレジストリサーバへのログインコマンド。以下は実行例です。
docker login Username: xxx Password: Email: xxx@gmail.com
🐮 docker tag docker tag
はイメージにタグを付けるためのコマンドです。
docker tag ソースイメージ オーガニゼーション/イメージ:タグ
タグを設定する設定例です。
docker tag イメージID(0e5574283393) オーガニゼーション/イメージ:タグ docker tag イメージ名:タグ(httpd:test ) fedora/httpd:version1.0.test
🏀 docker push docker push
はイメージをレジストリ(Docker Hubなど)に登録するコマンドです。
docker push [オプション] イメージ名[:タグ]
👽 docker system prune docker system prune
はDocker 1.13.ゼロから追加された機能で、使っていないコンテナやイメージを削除するコマンドです。
docker system prune WARNING! This will remove: - all stopped containers - all volumes not used by at least one container - all networks not used by at least one container - all dangling images Are you sure you want to continue ? [y/N] y Total reclaimed space: 0 B
🏈 docker inspect docker inspect
はDockerイメージ/コンテナの詳細情報を表示するコマンドです。
🐰 docker history docker history
を使うとDockerイメージのレイヤを確認できます。
docker history repository:tag
🚜 補足:Docker MachineのIPを調べる
🐝 参考リンク
🖥 VULTRおすすめ
「VULTR 」はVPSサーバのサービスです。日本にリージョンがあり、最安は512MBで2.5ドル/月($0.004/時間)で借りることができます。4GBメモリでも月20ドルです。
最近はVULTR のヘビーユーザーになので、「ここ 」から会員登録してもらえるとサービス開発が捗ります!