質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

725閲覧

dockerの仕組みについて

bababa

総合スコア10

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/05/28 05:45

現在個人開発で新たに、Dockerを使っています。
最も初歩的な、hello-worldをターミナル上に出力する作業をしていますが
いまいち理解が出来ていません。
今回の質問内容としては、こちらの記事を参考にdockerを構築しています。
https://qiita.com/KEINOS/items/43d9415e351d80f78c8b

①エディタ上に、docker-hello-worldnのファイルを作成
②ターミナルで、curl -O https://keinos.github.io/hello-docker-compose/docker-compose.ymlを入力
(docker-compose.ymlに、

version: "3" services: hello: image: hello-world:latest

と入力されます)

その結果、①〜②を実行すると、ターミナル上でこのようになります。

rpc186@RPC186-MacBook-Pro git-practice % docker-compose up Starting git-practice_hello_1 ... done Attaching to git-practice_hello_1 hello_1 | hello_1 | Hello from Docker! hello_1 | This message shows that your installation appears to be working correctly. hello_1 | hello_1 | To generate this message, Docker took the following steps: hello_1 | 1. The Docker client contacted the Docker daemon. hello_1 | 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. hello_1 | (amd64) hello_1 | 3. The Docker daemon created a new container from that image which runs the hello_1 | executable that produces the output you are currently reading. hello_1 | 4. The Docker daemon streamed that output to the Docker client, which sent it hello_1 | to your terminal. hello_1 | hello_1 | To try something more ambitious, you can run an Ubuntu container with: hello_1 | $ docker run -it ubuntu bash hello_1 | hello_1 | Share images, automate workflows, and more with a free Docker ID: hello_1 | https://hub.docker.com/ hello_1 | hello_1 | For more examples and ideas, visit: hello_1 | https://docs.docker.com/get-started/ hello_1 |

そこで質問なのですが、
1.docker-compose upを行うとなぜhello_1 と連続して
出力されるのか。
2.docker-compose upの中身を全て消しても、ターミナル上では
hello_1と入力されるのはなぜか。

以上、初歩的な質問で恐縮ですがご回答お待ちしております。
是非宜しくお願いいたします!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

R.Mizukami

2020/05/28 07:58

「エディタ上に、docker-hello-worldn のファイルを作成」というのは何を行ったのでしょうか。エディタを開いて `docker-hello-worldn` と入力したということですか? それともこれは保存したファイル名を表しているのでしょうか。また、以降の文で一切 docker-hello-worldn が出てこないのですが、このファイルは何のために作成したのでしょう。 「docker-compose upの中身を全て消しても」 というのはどのような操作を行ったのでしょうか。 docker-compose.yml を空にした状態で docker-compose up を実行したということですか? また、「ターミナル上で hello_1 と入力される」というのはどういった現象でしょうか。1. と同様のに各行の先頭に `hello_1 | ...` といった出力がなされるということですか?
bababa

2020/05/28 08:07

docker-hello-worldの中のdocker-compose.ymlという構成で作成しています。 ですので、docker-hello-worldのフォルダのなかに、docker-compose.ymlのファイルを作成した ということになります。最初の文章ではファイルではなくフォルダですね、失礼いたしました。 「docker-compose upの中身を全て消しても」というのは、docker-compose.ymlの中身の記述を消して、docker-compose upをしてもhello-1と出力されるということがなぜかお聞きしたいということです。 ターミナル上で hello_1 と入力されるというのは、上記の一番下のコード のようにhello-1と出力され流という意味になります。
guest

回答1

0

ベストアンサー

1.docker-compose upを行うとなぜhello_1 と連続して出力されるのか。

docker-compose がどのコンテナの出力かわかるようにつけているものだと思います。

docker-compose を利用せず、docker run hello-world:latest として実行いただくと、この行頭の出力がなくなるのがお分かりいただけると思います。

docker-compose は複数のコンテナをまとめて管理できるようになっているため、このようにしないとどのコンテナの出力かわからなくなるケースがあり、このような実装になっていると考えられます。

docker-compose up の中身を全て消しても、ターミナル上ではhello_1と入力されるのはなぜか。

こちらはすみません。手元に docker-compose を動かせる環境が無いのでわかりません。作成済みのコンテナが利用されたか、ファイルの変更が保存されていなかったとか、そのあたりが怪しい気がします。

投稿2020/05/28 08:43

R.Mizukami

総合スコア1077

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

bababa

2020/05/28 08:55

helloをhello2にした場合、hello2_1になりました。 ```docker run hello-world:latest```にした際は、確かにそうなりましたね。なるほど。。。 最後の質問ですが、再度中身を消して実行したらエラーになりました。なので正常だと思います。 今回の質問に関しては、無事解決しました。この度は誠にありがとうございました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問