docker 安装nginx 中修改nginx.conf文件 时出现 E: Unable to locate package vi 缺少vi指令如何安装
apt-get install vi Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package vi 当出现这个问题时 需要安装vi 出现错误
先进行apt-get update 然后apt-get install -y vim
---------------------------------------------------------------------------
在window C:\Windows\System32\drivers\etc 中修改hosts文件
 
docker pull nginx
拉取nginx 镜像
docker run -it -p  80:80 --name nginx -d nginx
运行docker容器
docker update --restart=always 容器ID(或者容器名) 设置容器开机自启动
进入docker 中安装的nginx
docker exec -it mynginx /bin/bash
vi /etc/nginx/conf.d
cp deafult.conf mall.conf
vi mall.conf
server_name 监听的域名
proxy_pass 反向代理的地址 该反向代理地址会找到upstream 中对应的服务名
 
vi /etc/nginx/nginx.conf
定义服务列表 因为只有一个网关 多个网关继续添加
 

当 访问首页时 访问失败 是因为网关没有添加对应的路由而被拦截,所有造成无法访问

根据spring-gateway 路由的方式
 
可以选择根据 -Host方式路由该访问

添加后重启发现还是没有访问到页面  原因是  访问经过nginx时(在nginx负载均衡到网关服务时 把原来请求的header丢弃了) 在请求头的 参数 会被过滤掉
 会被过滤掉

因此 我们需要在nginx 路由的时候配置 proxy_set_header Host $host

保存重启docker 后 就能正常访问了
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号