プログラミング学習記録#14 Docker②

●Dockerイメージの作成

docker image build コマンドでイメージを作成する

docker image build  [オプション] PATH

// オプション
-t  // タグをつける
-f  // ファイル名を指定(Dockerfile以外の名前の場合)


●コンテナの作成・起動

docker container runコマンド



docker container run [オプション] イメージ [コマンド]

// オプション

-d  // コンテナをバックグラウンドで実行する

—name  // コンテナに名前をつける

-it // 標準出力とターミナルをアッタッチする(コンテナ上で実行される操作がシェルの場合
    // コンテナが終了しなくなる)



●ポートを公開する

Dockerのネットワーク:コンテナのネットワークは独立しており、外部に対して閉じている

そのためポート番号を公開することでコンテナに接続できる

・ポート番号:どのアプリケーション宛の通信なのかを指定する番号

Dockerで外部からコンテナと通信するには・・・?

->コンテナのポートをホストに開放する

例)コンテナ作成時にコンテナのポート番号80をホストに解放し、ホストにポート番号8080へのリクエストをマッピングするように設定する

①ポート番号8080にリクエストを送る
②ホストのポート番号8080をコンテナのポート番号80に変換する
③コンテナのポート番号80にリクエストを送る
④ポート番号80にリクエストを受け取る


コンテナにポートを公開する

・docker container run コマンド実行時に -pオプションをつける

-p コンテナのポートをホストに公開する

docker container run -p 8080:80 myapache:latest

// ホストのポート番号8080とコンテナのポート番号80をマッピングする

●ログの確認

docker container logs [オプション] コンテナ

●コンテナ内でコマンド操作

docker container exec [オプション] コンテナ コマンド [引数]

// オプション

-it //  標準出力とターミナルをアタッチする->シェルを終了させない


●コンテナの停止・削除

docker container stop [オプション] コンテナ

コンテナの停止

・起動中のコンテナをまとめて停止する方法

docker container stop $( docker container ls -q)

docker container rm [オプション] コンテナ

コンテナの削除

docker container rm $( docker container ls -q -a)

 // コンテナを全て削除する
 
 
$docker container rm -f apache

// 起動中のコンテナを強制削除する

●イメージの削除

docker image rm [オプション] イメージ

●Dockerの掃除

※未使用のものが全て消えてしまうため注意!!

docker system prune [オプション]

// 未使用のコンテナ、ネットワーク、イメージを削除する

// オプション

-a  // 全て削除する

—volumes  // ボリュームを削除する

-f  // 強制的に

この記事が気に入ったらサポートをしてみませんか?