Docker-compose

docker-composeコマンド一覧


■カレントディレクトリに存在する「docker-compose.yaml」を参照して、docker-composeの起動
 $ docker-compose up -d

■カレントディレクトリに存在する「docker-compose.yaml」に紐づいているコンテナとNetworkを削除
 $ docker-compose down
Imageも削除
 $ docker-compose down --rmi all

■ボリュームを削除
 $ docker-compose rm

Dockerチートシート

dockerコマンド一覧

コンテナ操作


■起動中のコンテナ一覧
 $ docker ps 



■全てのコンテナ一覧(停止中のコンテナ含む)
 $ docker ps -a



■コンテナを作成(起動状態で)
 $ docker run <イメージ名>[:タグ名]
例)docker run TestApp
例)docker run -d --name testweb -p 80:80 nginx
-d: デタッチモード。コンテナをバックグラウンドで実行し、新しいコンテナIDを出力します。
--name:コンテナに名前を割り当てます。
-p:コンテナのポートまたはポートの範囲をホストに公開します。


■コンテナを作成(停止状態で)
 $ docker create <イメージ名>[:タグ名]
例)docker create TestApp


■コンテナの起動
 $ docker start <コンテナID>
例)docker start 08311c3ab75d


■コンテナへの接続
 $ docker exec -it <コンテナ名>
例)docker exec -it ubuntu_bash bash


■コンテナへコマンドを実行
 $ docker exec <コンテナ名> <コマンド>
例)docker exec ubuntu_bash ls -l /usr


■コンテナへローカルのファイルをコピーします
 $ docker cp <ローカル・パス> <コンテナ名>:<コンテナ内のディレクトリパス>
例)docker cp /tmp/app.py webapp:/tmp/app.py


■コンテナからローカルへファイルをコピーします
 $ docker cp <コンテナ名>:<コンテナ内のディレクトリパス> <ローカル・パス>
例)docker cp webapp:/tmp/app.py /tmp/app.py


■コンテナの停止
 $ docker stop <コンテナID>
例)docker stop 08311c3ab75d


■コンテナの強制停止(Force)
 $ docker kill <コンテナID>
例)docker kill 08311c3ab75d


■コンテナの削除
 $ docker rm <コンテナID>
例)docker rm 08311c3ab75d
強制削除。
docker rm -f 08311c3ab75d


■コンテナの詳細確認
 $ docker container inspect <コンテナID>
例)docker container inspect 940fb334d049


■コンテナのlog
 $ docker log <コンテナID>
例)docker log 940fb334d049


■コンテナのプロセス表示
 $ docker top <コンテナID>
例)docker top 940fb334d049


コンテナイメージの操作


■コンテナイメージの確認
 $ docker images



■コンテナイメージの削除
 $ docker rmi <イメージID>

例)docker rmi 940fb334d049


■コンテナイメージの履歴
 $ docker history <イメージID>

例)docker history 940fb334d049


■コンテナイメージのビルド
 $ docker build -t <リポジトリ[:TAG]> .

例)docker build -t testApps:latest .
※カレントディレクトリにDockerfileがある場合


Dockerhub操作


■Dockerログイン
 $ docker login



■Dockerイメージ検索
 $ docker search <イメージ名>
例)docker search postgres


■Dockerイメージダウンロード
 $ docker pull <イメージ名>
例)docker pull postgres:latest


■Dockerイメージアップロード
 $ docker push <レジストリの場所/リポジトリ名>[:バージョン]
例)docker push test.com/MyApp:01



コンテナネットワーク


■ネットワーク作成
 $ docker network create --subnet <サブネットマスク> <ネットワークの名前>
例)docker network create --subnet 192.168.10.0/24 testnetwork


■ネットワーク一覧表示
 $ docker network ls



■ネットワークの削除
 $ docker network rm <ネットワークの名前>
例)docker network rm testnetwork


■ネットワークにコンテナを接続
 $ docker network connect <ネットワークの名前> <コンテナID>
 $ ddocker network connect --ip <IPアドレス> <ネットワークの名前> <コンテナID>
例)docker network connect --ip 192.168.10.1 testnetwork 940fb334d049
※--ip コンテナに任意のIPアドレスを割り当てる


■ネットワークからコンテナを切断する
 $ docker network disconnect <ネットワークの名前> <コンテナID>
例)docker network disconnect testnetwork 940fb334d049


■ネットワークの詳細表示
 $ docker network inspect <ネットワークの名前>
例)docker network inspect testnetwork


■未使用ネットワークを全て削除
 $ docker network prune



コンテナのボリューム


■ボリューム作成
 $ docker volume create <ボリュームの名前>
例)docker volume create myvol


■ボリューム削除
 $ docker volume rm <ボリュームの名前>
例)docker volume rm myvol


■ボリューム一覧表示
 $ docker volume ls



■未使用ボリュームを全て削除
 $ docker volume prune



■ボリューム詳細表示
 $ docker volume inspect <ボリュームの名前>
例)docker volume inspect myvol


body .syntaxhighlighter { margin: 5px 0; border: 1px dashed rgb(47, 111, 171); padding: 1em; width: calc(100% - 2em) !important; }