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  后 就能正常访问了

posted @ 2022-05-30 20:36  花心大萝卜li  阅读(858)  评论(0)    收藏  举报