这是我的Dockerfile,非常简单
docker build -t node_alpine .
我跑步
docker run -p 80:3000 node_alpine
和
docker ps
但是容器没有启动。 当我跑步
{{1}}
我什么都看不到。为什么?
答案 0 :(得分:1)
如果只运行node
而没有任何参数,它将从其标准输入中读取程序,如果那里没有任何内容,它将立即退出。如果运行docker ps -a
,则应该看到已退出的容器。
我建议在主机上设置普通的Javascript开发环境。应用程序正常工作后,将COPY
(构建的)应用程序写入图像的Dockerfile,然后使用CMD
运行该文件。
您显示的Dockerfile实际上并没有执行任何操作。如果确实为Node提供标准输入,则可能会收到交互式提示
docker run --rm -it node:8.12.0-alpine node
但这是获得语言解释器REPL的一种非常round回的方法;只需直接在主机上安装Node并将其用于开发即可。