回答編集履歴
1
別戦略を追記。
test
CHANGED
@@ -1,3 +1,13 @@
|
|
1
1
|
GNUツールにはtimeoutコマンドというものがあり、それを使うと一定時間後にプロセスを終了させることができます。
|
2
2
|
macOSならbrew install coreutilsでgtimeoutコマンドですね。
|
3
3
|
|
4
|
+
## 追記
|
5
|
+
|
6
|
+
コンテナには外部からのシグナルには反応しないみたいでやり方は以下のほうがよさそう。
|
7
|
+
|
8
|
+
例えば3秒後に「docker kill $(docker ps -ql)」を実行するみたいなプロセスをバックグラウンドで起動してから
|
9
|
+
dockerのコンテナプロセスを起こすというのでうまく止めることができます。
|
10
|
+
```shell
|
11
|
+
> sh -c "sleep 3;docker kill \$(docker ps -ql)" & docker run -it --rm alpine sleep 10
|
12
|
+
```
|
13
|
+
「$(docker ps -ql)」を後で評価させるために先頭にバックスラッシュをつけるのがキモです。
|