docker系列 -- 安装Nginx
1、拉取Nginx镜像
docker pull nginx
2、启动容器
docker run -d --name nginx -p 80:80 nginx
3、访问Nginx,出现Nginx欢迎页面
curl localhost
4、创建目录存储 Nginx 的配置和日志
mkdir -p /docker/nginx && cd /docker/nginx
mkdir conf log
mkdir -p conf/vhost
5、从容器内复制配置文件到宿主机,经配置文件映射到容器内对应的目录中(这样在宿主机就能改容器里面的配置)
docker cp nginx:/etc/nginx/conf.d/default.conf /docker/nginx/conf/vhost/default.conf
docker cp nginx:/etc/nginx/nginx.conf /docker/nginx/conf/nginx.conf
6、重建容器
1、docker stop nginx && docker rm nginx
2、docker run --name nginx -p 80:80 \
-v /docker/nginx/conf/vhost:/etc/nginx/conf.d \
-v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /www:/var/www/html \(这里是nginx默认访问的地方,/www这块的路径必须与PHP的一致)
-v /docker/nginx/log:/var/log/nginx --link php7.4-fpm:php7.4-fpm -d nginx
7、查看容器状态
docker ps -a
问题1:curl localhost报错,提示file not find
原因:nginx读取网站根目录时没有找到php文件
解决:找到项目目录挂载位置(启动容器时的-v /webroot:/var/www/html)。我的项目目录挂载在 /var/www/html目录下
修改Nginx配置文件的fastcgi_param为 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
修改root 目录为 /var/www/html (如果有指定项目,后面接项目的根目录)
最后重启Nginx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?
2021-04-27 RabbitMQ基本概念详细介绍