このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
docker:20:basic [2020/12/19 10:42] y2sunlight [コンテナの操作] |
docker:20:basic [2020/12/23 22:18] (現在) y2sunlight [Dcoker コンテナの基本的な利用方法(Run)] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== Dcoker 基本的な利用方法 ====== | + | ====== Dcoker |
Docker 20.10.1 | Docker 20.10.1 | ||
行 9: | 行 9: | ||
* [[wsl2: | * [[wsl2: | ||
- | * Dcoker コンテナの基本的な利用方法 | + | * Dcoker コンテナの基本的な利用方法(Run) |
- | * [[docker: | + | |
* [[docker: | * [[docker: | ||
- | * [[docker: | ||
リンク | リンク | ||
行 59: | 行 57: | ||
\\ | \\ | ||
- | ==== 詳細情報の表示 ==== | ||
- | |||
- | コンテナに関する全ての情報を取得するには、[[https:// | ||
- | |||
- | <code bash> | ||
- | $ docker inspect httpd | ||
- | </ | ||
- | |||
- | \\ | ||
===== Dockerイメージの取得 ===== | ===== Dockerイメージの取得 ===== | ||
行 106: | 行 95: | ||
この Docker イメージが、Docker エンジンによって Docker コンテナとして実行されると、Linux の提供する名前空間(namespace)や cgroup によって隔離された特別な状態のプロセスとして起動されます。 | この Docker イメージが、Docker エンジンによって Docker コンテナとして実行されると、Linux の提供する名前空間(namespace)や cgroup によって隔離された特別な状態のプロセスとして起動されます。 | ||
+ | |||
+ | Dockerイメージについては、以下を参照して下さい。非常に丁寧に解説されています: | ||
+ | |||
+ | * [[https:// | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== イメージのレイヤ情報出力 ==== | ||
[[https:// | [[https:// | ||
行 135: | 行 132: | ||
* '' | * '' | ||
- | Dockerイメージについては、以下を参照して下さい。非常に丁寧に解説されています: | + | \\ |
- | * [[https://qiita.com/zembutsu/items/24558f9d0d254e33088f|Dockerイメージの理解を目指すチュートリアル]] | + | ==== イメージの詳細情報の表示 ==== |
+ | |||
+ | イメージに関する全ての情報を取得するには、[[https://docs.docker.jp/engine/reference/commandline/ | ||
+ | |||
+ | <code bash> | ||
+ | $ docker inspect httpd | ||
+ | </ | ||
+ | |||
+ | 上の例は、全ての詳細情報を表示しますが、次の例のように情報の一部を検索することも出来ます。下の例では、イメージの持つコマンドを検索しています。 | ||
+ | |||
+ | <code bash> | ||
+ | docker inspect httpd --format=' | ||
+ | [httpd-foreground] | ||
+ | </ | ||
+ | |||
+ | この例から、httpd イメージのコンテナを実行すると '' | ||
\\ | \\ | ||
行 264: | 行 276: | ||
\\ | \\ | ||
- | ===== helloworld.html ===== | + | ===== バインドマウントの利用 ===== |
+ | |||
+ | ==== バインドマウントとは ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ==== バインドマウントの例 ==== | ||
+ | |||
+ | バインドマウント(bind mounts)の例として、Apache コンテナのドキュメントルートをホスト側にマウントします。 | ||
+ | |||
+ | まず、準備としてホスト側で ホームディレクトリ下に新しいディレクトリ('' | ||
+ | |||
+ | <code bash> | ||
+ | $ cd ~ | ||
+ | $ mkdir htdocs | ||
+ | $ cd htdocs | ||
+ | </ | ||
+ | |||
+ | 新しいディレクトリ('' | ||
+ | |||
+ | <code html index.html> | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | 今度は、apache の '' | ||
+ | |||
+ | <code bash> | ||
+ | $ docker run -it httpd bash | ||
+ | </ | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | コンテナ内で '' | ||
+ | |||
+ | <code sh> | ||
+ | # cat / | ||
+ | DocumentRoot "/ | ||
+ | </ | ||
+ | |||
+ | コンテナ内での操作が終了したら '' | ||
+ | |||
+ | === Apacheコンテナの起動 === | ||
+ | |||
+ | Apache のドキュメントルート( ''/ | ||
+ | |||
+ | <code bash> | ||
+ | $ docker run -d -p 8080:80 -v $(pwd):/ | ||
+ | </ | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | この例では、'' | ||
+ | |||
+ | <code bash> | ||
+ | $ docker run -d -p 8080:80 --mount type=bind,source=$(pwd), | ||
+ | </ | ||
- | https:// | + | 両者の違いは次の通りです。 |
+ | * '' | ||
+ | * '' | ||
\\ | \\ | ||