我正在尝试从angular 4应用程序构建docker容器。使用
运行时docker run -p 80:80 -v /Users/mles/Documents/devicelab/dist/devicelab:/usr/share/nginx/html:ro nginx
我可以在浏览器中以localhost:80看到index.html。
为了便于携带,我制作了一个DOCKERFILE:
FROM nginx
COPY dist/devicelab /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
我正在使用
docker build --no-cache --rm -t dockerregistry.test.com/devicelab/devicelab .
然后运行它
docker run dockerregistry.test.com/devicelab/devicelab:latest
现在,当我命中localhost:80时,什么都没有发生。 Nothin显示在浏览器中,并且控制台上没有日志。我的Dockerfile有什么问题?
答案 0 :(得分:2)
您忘记了#! python3
上的端口
docker run
答案 1 :(得分:2)
-p
参数, @rafaelncarvalho是正确的,但为澄清起见,-p
是将已经暴露的端口发布到网络外部。如果没有-p
,则{nginx}将在您进入exec -it bash
但不在外面时可以访问。 -p
(也称为--publish
)还使您可以控制将容器端口映射到您选择的端口。前docker container run -p 8080:80 nginx
将在端口8080
上发布Nginx服务器