как перехватить событие выхода процесса в docker

#docker

#docker

Вопрос:

Я создаю процесс с помощью nodejs в контейнере docker, но я не перехватываю событие выхода процесса, версия docker 1.0.1, но тот же код подходит для версии 0.91 docker.

 var spawn = require('child_process').spawn;

var exec = spawn('docker', 'run busybox /etc/bin/bash each hello world');

exec.on('error', function(err){
   console.log(err);
});

exec.stdout.on('data', function(data) {
    console.log('stdout: '   data);
});

exec.on('exit', function(err){
    console.log('exit')
});
  

Ответ №1:

Я думаю, что проблема заключается в использовании spawn . Вторым параметром должен быть массив в соответствии с документами nodejs.

В быстром тестировании ваш код запускается docker без каких-либо аргументов, по крайней мере, на node v0.10.28.