teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

コンテナが起動しないのではなく、スクリプト実行後、正常終了していたことがわかりましたので、質問内容を修正しました。

2017/06/25 23:12

投稿

akihico
akihico

スコア27

title CHANGED
File without changes
body CHANGED
@@ -1,9 +1,11 @@
1
1
  本来の目的は、Dockerのコンテナが起動したときに、サービスを自動起動するスクリプトを仕込みたいと思っています。今、実験で簡単なコマンドを起動するようにしてみているのですが、うまくいきません。
2
2
 
3
- Dockerのコンテナを起動した時に、スクリプトが自動実行されるDocker imageを作りたいのですが、どのようにすればよろしでしょうか。
4
3
 
4
+
5
+ Dockerのコンテナを起動した時に、スクリプトが自動実行され、コンテナが終了してしまいます。起動し続けるDocker imageを作りたいのですが、どのようにすればよろしでしょうか。
6
+
5
7
  ■概要
6
- Dockerのコンテナが起動した際、スクリプトを自動実行したいのですが、せん
8
+ Dockerのコンテナが起動した際、スクリプトを自動実行して起動し続けるようにしたいのですが、stopしてしまいま
7
9
 
8
10
  ■環境
9
11
  ・macOS Sierra
@@ -24,25 +26,28 @@
24
26
  ```
25
27
  ・Dockerのbuildコマンド
26
28
  ```ターミナル
27
- $ docker build -t ubuntu:kwdr_test .
29
+ $ docker build -t test .
28
30
  ```
29
31
  ・Dockerのrunコマンド
30
32
  ```ターミナル
31
- $ docker run -it --name kwdr kwdr
33
+ $ docker run -it --name test test
32
34
  ```
33
35
  ここまで、何のエラーも表示されません。
34
36
  Dockerのrunコマンドを実行したあとに、何も起きません。
35
37
 
36
38
  その後、Dockerのstart、execを行うと次のようになります。
37
39
  ```ターミナル
38
- $ docker start kwdr
40
+ $ docker start test
39
- kwdr
41
+ test
40
- $ docker exec -it kwdr bash
42
+ $ docker exec -it test bash
41
43
  Error response from daemon: Container e2d4dfbb57bd563ba3231599d6300779a5897814ed2fa350a836814da8fd3c6b is not running
42
44
  ```
43
45
  DockerfileのENTRYPOINTを外すと、正常にコンテナが起動します。
44
46
  ```Dockerfile
47
+ FROM ubuntu
48
+ RUN mkdir /home/kwdr/dcvol -p
49
+ ADD start.sh /home/kwdr/
45
- ENTRYPOINT /bin/bash /home/kwdr/start.sh
50
+ #ENTRYPOINT /bin/bash /home/kwdr/start.sh
46
51
  ```
47
52
  ちなみに、正常に起動したコンテナ(ENTRYPOINTを外したDockerfile)で、下記のコマンドは正常に実行されます。
48
53
  ```ターミナル(コンテナ内)

1

2017/06/25 23:12

投稿

akihico
akihico

スコア27

title CHANGED
File without changes
body CHANGED
@@ -6,7 +6,7 @@
6
6
  Dockerのコンテナが起動した際、スクリプトを自動実行したいのですが、うまくいきません。
7
7
 
8
8
  ■環境
9
- ・macOS sierr
9
+ ・macOS Sierra
10
10
  ・Docker Community Edition Version 17.0.3.1-ce-mac12(17661)
11
11
 
12
12
  ■設定・操作