如何开始使用dockerode

dmx*_*dmx 2 docker docker-compose

我正计划在docker中运行我的应用程序。我想在Docker容器上动态启动,停止,构建,运行命令.... 我找到了一个名为dockerode的工具。是项目存储库。这个项目有文档,但是我不太了解。我想了解几件事。这是建立图像的方法

docker.createContainer({Image: 'ubuntu', Cmd: ['/bin/bash'], name: 'ubuntu-test'}, function (err, container) {
  container.start(function (err, data) {
    //...
  });
});
Run Code Online (Sandbox Code Playgroud)

可以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);
  });

  /* ... */
}
Run Code Online (Sandbox Code Playgroud)

我怎么知道我可以在这里放几个参数{ /*...*/ Tty: true /*...*/ }

有人也尝试过这个软件包吗?请帮助我开始。

Ved*_*kic 5

Dockerode只是Docker API的节点包装器。您可以在api文档中找到可用于每个命令的所有参数。例如docker.createContainer将调用POST / containers / create(文档在这里:https ://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#/create-a-container )检查lib文件夹中的文件的dockerode repo以查看为每个dockerode方法包装的api命令。