我试过hello world node.js with docker。我创建了一个图像&容器。我使用
导出容器docker export $container_ID > container_ID.tar
问。如何在导回后运行它?
docker import - <user-name>/node-hello < container_ID.tar
docker run -p 49610:8080 -d <user-name>/node-hello
错误:创建:未指定命令
我发现了一个git hub问题import error
这里给出的解决方案是:docker run -p 49610:8080 -d <user-name>/node-hello /someCommandToRun.sh
我尝试添加Dockerfile命令,如(ADD ./src;cd ./src;npm install; CMD ['node','。/ src / index.js']) 但图像因退出127而失败
问。使node-hello-world图像运行的命令是什么?
答案 0 :(得分:6)
docker run
将命令作为其最终参数运行。该命令必须存在于容器中。例如,docker run <image> bash
将在容器中运行bash
,然后立即退出。要在容器中使用交互式bash shell,请使用docker run -t -i <image> bash
。
docker run
不接受像ADD
和CMD
这样的Dockerfile命令。要使用Dockerfile,请将所有命令放在名为Dockerfile
的文件中,然后使用docker build -t="some tag name" .
构建映像。
您应该从Getting Started指南开始,以便更好地了解Docker。
答案 1 :(得分:4)
问。如何在导回后运行它?
并且:docker run -p 49610:8080 -d <user-name>/node-hello /someCommandToRun.sh
问。使node-hello-world图像运行的命令是什么?
并且:docker run -p 49610:8080 -d <user-name>/node-hello node /src/index.js