我打算在docker中运行我的应用程序。我想在docker容器上动态启动,停止,构建,运行命令......我找到了一个名为dockerode的工具。 Here是项目回购。这个项目有doc,但我不是很了解。我想了解一些事情。这是如何构建图像
docker.createContainer({Image: 'ubuntu', Cmd: ['/bin/bash'], name: 'ubuntu-test'}, function (err, container) {
container.start(function (err, data) {
//...
});
});
在构建期间使用RUN apt-get update
或Dockerfile
时,可以使RUN ADD /path/host /path/docker
成为可能吗?如何在构建后将我的应用程序移动到容器中?
让我们看看这段代码:
//tty:true
docker.createContainer({ /*...*/ Tty: true /*...*/ }, function(err, container) {
/* ... */
container.attach({stream: true, stdout: true, stderr: true}, function (err, stream) {
stream.pipe(process.stdout);
});
/* ... */
}
我怎么知道我可以在这里放多少个参数{ /*...*/ Tty: true /*...*/ }
?
有人试过这个套餐吗?请帮我开始。
答案 0 :(得分:4)
Dockerode只是Docker API的节点包装器。您可以在api文档中找到可用于每个命令的所有参数。 例如,docker.createContainer将调用POST / containers / create(docs at here:https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#/create-a-container) 检查dockerode repo的lib文件夹中的文件,看看为每个dockerode方法包装了什么api命令。