gpt4 book ai didi

docker - 如何通过 Dockerfile 更改 nginx 的默认主页,然后通过运行容器启动它

转载 作者:行者123 更新时间:2023-12-01 01:45:33 27 4
gpt4 key购买 nike

我有一个非常简单的 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 ')。

无论我尝试多少次,我都无法在浏览器上打印我的消息。

有人可以指出我正确的方向吗?

最佳答案

默认的 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

关于docker - 如何通过 Dockerfile 更改 nginx 的默认主页,然后通过运行容器启动它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49864764/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com