此处为 Mac OS,运行 Docker 版本 17.12.0-ce-mac49。我有以下超简单Dockerfile
:
FROM nginx
COPY index.html /usr/share/nginx/html
我创建了我的 Docker 镜像:
docker build -t mydocbox .
到目前为止一切顺利,没有错误。然后我从该图像创建一个容器:
docker run -it -p 8080:8080 -d --name mydocbox mydocbox
我看到它正在运行(我已经通过发出
docker ps
以及通过 docker exec -it <containerId> bash
SSH 进入盒子并确认 /usr/share/nginx/html/index.html
存在来确认它的运行)!当我打开浏览器并转到
http://localhost:8080
时,我得到一个空的/空白的/没有任何东西可以看到的屏幕,不是我预期的 index.html
页。我在任何地方都没有看到任何错误,也没有任何迹象表明配置不好或防火墙导致了问题。关于问题可能是什么或我如何排除故障的任何想法?
最佳答案
看看能不能关注this example :
FROM nginx:alpine
COPY default.conf /etc/nginx/conf.d/default.conf
COPY index.html /usr/share/nginx/html/index.html
它使用 default.conf file这确实指定了使用的 index.html
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
default.conf
的变化监听端口从 80 到 8080,并暴露它。或者干脆
docker run
与 -p 8080:80
(主机端口:容器端口)。
关于macos - Dockerized nginx 不提供 HTML 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48656363/