- 502 名前:login:Penguin mailto:sage [2018/11/05(月) 08:47:09.36 ID:Thuf2ewx.net]
- >>470
docker-compose.yamlはコマンドのオプションで指定するのと同じ docker-composeコマンドというのはそもそも、 一つのコンテナだけ構成されたものを起動するならdocker runだけでいいけど、 複数のコンテナで構成するときに、docker runで適切なオプションつけて 複数起動するのが面倒って言うときに使うものだから、機能的にはdocker runと同等 run以外にbuildとかもできるけどね。 で、Dockerfileとdocker runの違いだが、Dockerfileはイメージの仕様として ポートを公開しますよ、ボリュームを使用しますよって、明示するときに使う docker runの方は公開されたポートをホスト上のどのポートに割り当てるのか ボリュームをどこのディレクトリに割り当てるのか指定するのに使う 例えば、Dockerイメージとして構成されたものが、どんなポートを公開しているか? っていうのはDockerfileを見ればわかるわけだ。 で、そのイメージを起動する場合、ポートを変更できる機能がなければ、 同一ホストで複数起動することができなくなるだろ? 実際にどのポートを使用するかは実行時にしか決められない。(ボリュームも同じ) Dockerfileではそのイメージがどういうものかを書いて、 docker runはイメージを起動するときのオプションというわけ
|
|