質問編集履歴
5
うまくいった場合の手順を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -28,13 +28,15 @@
|
|
28
28
|
1da91a1b2f0e alpine "sh -c 'apk update &…" 12 seconds ago Up 11 seconds test_container
|
29
29
|
|
30
30
|
## コンテナの中での処理もおこなわれている
|
31
|
-
$ docker exec test_container tail /tmp/hoge
|
31
|
+
$ docker exec test_container tail /tmp/hoge
|
32
|
+
Sat Oct 6 00:16:01 UTC 2018
|
32
33
|
Sat Oct 6 00:16:11 UTC 2018
|
33
34
|
Sat Oct 6 00:16:21 UTC 2018
|
34
35
|
:
|
35
36
|
|
36
37
|
## でも ps では sh も date も出てこない ← 問題!
|
38
|
+
$ docker exec test_container ps -aux
|
37
|
-
|
39
|
+
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
|
38
40
|
root 24 0.0 0.0 5696 656 ? Rs 00:16 0:00 ps -aux
|
39
41
|
```
|
40
42
|
|
@@ -68,4 +70,36 @@
|
|
68
70
|
PRETTY_NAME="Alpine Linux v3.7"
|
69
71
|
HOME_URL="http://alpinelinux.org"
|
70
72
|
BUG_REPORT_URL="http://bugs.alpinelinux.org"
|
73
|
+
```
|
74
|
+
|
75
|
+
なお、CentOS 7 + Docker の古いバージョンでおなじテストをおこなったところ、**他のプロセスの情報も見ることができました**
|
76
|
+
|
77
|
+
うまくいった環境の情報はこちら。
|
78
|
+
|
79
|
+
```
|
80
|
+
# docker -v
|
81
|
+
Docker version 1.7.1, build 446ad9b/1.7.1
|
82
|
+
# cat /etc/redhat-release
|
83
|
+
CentOS Linux release 7.1.1503 (Core)
|
84
|
+
```
|
85
|
+
|
86
|
+
実施手順と結果は以下のとおり:
|
87
|
+
|
88
|
+
```
|
89
|
+
## -rm オプションのみ除いています
|
90
|
+
# docker \
|
91
|
+
run -d \
|
92
|
+
--name=test_container \
|
93
|
+
alpine \
|
94
|
+
sh -c '\
|
95
|
+
apk update \
|
96
|
+
&& apk add procps; \
|
97
|
+
while sleep 10; do date >> /tmp/hoge; done
|
98
|
+
'
|
99
|
+
c932c6ffa4a78495056d5f41cb7a8b8f3fd74990a7c5297cf7e461831a3bb146
|
100
|
+
# docker exec test_container ps -aux
|
101
|
+
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
|
102
|
+
root 1 0.0 0.0 1500 384 ? Ss Oct02 0:00 sh -c \ apk update \ && apk add procps; \ while sleep 10; do date >> /tmp/hoge; done
|
103
|
+
root 18 0.0 0.0 1496 252 ? S Oct02 0:00 sleep 10
|
104
|
+
root 19 0.0 0.0 3540 476 ? Rs Oct02 0:00 ps -aux
|
71
105
|
```
|
4
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
Dockerで起動したコンテナ内で、`ps -
|
3
|
+
Dockerで起動したコンテナ内で、`ps -aux`してほかにどんなプロセスが走っているか調べたいです。
|
4
4
|
|
5
|
-
現状だと `ps -
|
5
|
+
現状だと `ps -aux` するために `docker exec` したプロセス(shなど)配下のプロセスしか見えません。
|
6
6
|
|
7
7
|
以前はコンテナ内全プロセスが見えた気がするのですが、現在公式のAlpine Linuxコンテナを使ったところなぜかできなくて首を傾げています。initの関係かなあとも思うのですが、どうにも解決できません。
|
8
8
|
|
3
title
CHANGED
File without changes
|
body
CHANGED
@@ -24,7 +24,8 @@
|
|
24
24
|
1da91a1b2f0e8ed10e0e368fa7e796d2560f24212ffbff2e908ad8c648bf0cae
|
25
25
|
|
26
26
|
## コンテナは正常に稼働している
|
27
|
-
$ docker ps | grep test_container
|
27
|
+
$ docker ps | grep test_container
|
28
|
+
1da91a1b2f0e alpine "sh -c 'apk update &…" 12 seconds ago Up 11 seconds test_container
|
28
29
|
|
29
30
|
## コンテナの中での処理もおこなわれている
|
30
31
|
$ docker exec test_container tail /tmp/hoge Sat Oct 6 00:16:01 UTC 2018
|
2
title
CHANGED
File without changes
|
body
CHANGED
@@ -24,7 +24,7 @@
|
|
24
24
|
1da91a1b2f0e8ed10e0e368fa7e796d2560f24212ffbff2e908ad8c648bf0cae
|
25
25
|
|
26
26
|
## コンテナは正常に稼働している
|
27
|
-
$ docker ps | grep test_container 1da91a1b2f0e alpine "sh -c 'apk update &…" 12 seconds ago Up 11 seconds test_container
|
27
|
+
$ docker ps | grep test_container >1da91a1b2f0e alpine "sh -c 'apk update &…" 12 seconds ago Up 11 seconds test_container
|
28
28
|
|
29
29
|
## コンテナの中での処理もおこなわれている
|
30
30
|
$ docker exec test_container tail /tmp/hoge Sat Oct 6 00:16:01 UTC 2018
|
1
title
CHANGED
File without changes
|
body
CHANGED
@@ -39,12 +39,12 @@
|
|
39
39
|
|
40
40
|
### 試したこと
|
41
41
|
|
42
|
-
* Supervisordをinit代わりにしたコンテナで複数のプロセスを立ち上げ、exec bash でそのコンテナに入ってみた
|
42
|
+
* Supervisordをinit代わりにしたコンテナで複数のプロセスを立ち上げ、exec bash でそのコンテナに入ってみた
|
43
|
-
|
43
|
+
→bashから、Supervisordで立ち上げたプロセスが見えない
|
44
|
-
* `ps` コマンドがおかしいのでは?
|
44
|
+
* `ps` コマンドがおかしいのでは?
|
45
|
-
|
45
|
+
→Busyboxのpsでも、procpsのpsでも見えません
|
46
|
-
* /proc 配下はどうなっている?
|
46
|
+
* /proc 配下はどうなっている?
|
47
|
-
|
47
|
+
→/proc 配下に、そもそも自分自身(shでコンテナに入ってるならそのsh)以外のプロセスが見あたりません
|
48
48
|
|
49
49
|
泣きそうです。
|
50
50
|
|