我有一个非常简单的HTML文件输出' Container with HTML file
'。
我有这个Dockerfile,我复制了我的welcome.html
(我的简单HTML页面):
FROM nginx:latest
WORKDIR /usr/share/nginx/html
COPY welcome.html welcome.html
然后我在包含此HTML页面的目录中创建一个图像:
docker image build -t html_nginx .
使用以下命令运行容器:
docker container run -p 80:80 --rm html_nginx
但是当容器在端口80上运行时,我会得到默认的' Welcome Page
' nginx而不是HTML文件中我想要的输出(' Container with HTML file
')。
我尝试了多少,我从来没有能够在浏览器上打印我的信息。
有人可以指出我正确的方向吗?
答案 0 :(得分:2)
默认的nginx配置将从index.html
目录加载/usr/share/nginx/html
文件。
此默认设置在/etc/nginx/conf.d/default.conf
中设置了
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
要解决此问题,您可以将welcome.html
复制到/usr/share/nginx/html
目录中index.html
,或将上面的index
行更改为引用welcome.html
并重新加载。要使此更改更加永久,您可能希望创建一个dockerfile,用于定义一个docker镜像,覆盖已在您已设置此值的位置复制的配置。
或者,您应该只能在访问服务器时访问/welcome.html
,例如http://localhost:80/welcome.html