diff --git a/server.js b/server.js index c146cdf..431b3f3 100644 --- a/server.js +++ b/server.js @@ -248,6 +248,8 @@ var docker_build = (socket, sessionID) => { clearInterval(intervalObj) clearTimeout(timeoutObj) socket.emit('info', 'Container exited') + // Delete container + container.delete({ force: true }) // Get submission results update_submission(socket, sessionID) } @@ -264,8 +266,26 @@ var docker_build = (socket, sessionID) => { console.log('end') if(!finished) { - clearInterval(intervalObj) - socket.emit('info', 'timeout') + docker.container.list({all:true}) + .then((containers) => { + containers.forEach(container => { + if(container.data.Id == container_id) { + socket.emit('info', 'Timeout, cleaning ' + container.data.State + ' container') + + // Delete container + container.delete({ force: true }) + + // Finished Running + finished = true + clearInterval(intervalObj) + clearTimeout(timeoutObj) + clearInterval(intervalObj) + + socket.emit('info', 'Container removed') + } + }) + }) + .catch(error => console.log(error)) } }, 900000) }