[求助] docker nginx 404 Not Found 问题

2021-11-01 02:21:01 +08:00
 yuyuyu6668

在 docker 中成功启动了 nginx ,能访问 Welcome to nginx!页面 , 但是并不能访问到自己的静态页面

步骤如下 首先 创建 nginx 容器

docker run -id --name=nginx1 \
-p 81:80 \
nginx

复制出容器中的 nginx.conf 到宿主机

docker cp 5abfd95f6d3c:/etc/nginx/nginx.conf /mydata/nginx/conf/

然后删除掉容器 重新创建

docker run -id --name=nginx1 \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/html:/user/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx \
-p 81:80 \
-d nginx

nginx 正常运行 能访问到 Welcome to nginx! 页面

但是上传测试 html 文件到文件夹 /mydata/nginx/html 下 访问报 404 Not Found

宿主机文件

docker inspect nginx1

/mydata/nginx/conf/nginx.conf 文件内容

请问大佬如何才能访问到 a.html

非常感谢您的回复

1254 次点击
所在节点    Docker
10 条回复
eason1874
2021-11-01 02:35:40 +08:00
应该是路径错误,/usr/share/nginx/html 开头你写成了 /user
IceBay
2021-11-01 04:52:59 +08:00
提供一个思路,进入容器里查看文件是否存在。
Trim21
2021-11-01 07:19:12 +08:00
/usr/share
julyclyde
2021-11-01 11:26:00 +08:00
先搞明白 nginx 本身
再 docker
别给自己额外多找麻烦
studycode
2021-11-01 14:22:15 +08:00
1.把容器内 conf.d 文件夹拷贝到宿主机;
2.修改宿主机 conf.d 内的 default.conf 的配置,而不要修改宿主机 nginx.conf 的配置
3.启动命令中添加 conf.d 的-v 命令
yuyuyu6668
2021-11-01 22:34:56 +08:00
@eason1874 非常感谢你 是这个原因 . 我是个新手 最近买了个便宜服务器 看视频教程 瞎折腾 谢谢你的帮助
yuyuyu6668
2021-11-01 22:37:12 +08:00
@julyclyde usr 写成 user 了 我是个新手 跟着视频教程操作学习一下 . 水平低 确实有很多麻烦
yuyuyu6668
2021-11-01 22:38:18 +08:00
@studycode 非常感谢你的回复 , 是我大意了 把 usr 写成 user 了 谢谢
yuyuyu6668
2021-11-01 22:39:19 +08:00
@Trim21 非常感谢你的回复 , 是这个原因 谢谢
yuyuyu6668
2021-11-01 22:40:02 +08:00
@IceBay 非常感谢你的回复 , 是我大意了 把 usr 写成 user 了 谢谢你

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/811981

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX