1.先在windows配置我们的域名转发到nginx
2.然后在nginx配置请求转发到gateway网关服务
3.gateway网关服务将请求转发到我们对应的服务
修改 C:\Windows\System32\drivers\etc目录下的hosts文件
在文件末尾添加域名映射, ip是你的nginx的地址
192.168.56.103 gulimall.com
测试一下, 没有问题
1.先了解一下nginx.conf配置文件的知识
2.修改挂载目录下的nginx.conf文件
按照下图添加内容, 配置上游服务器, 也就是我们的gateway网关模块的地址
修改内容
upstream gulimall{
server 192.168.56.1:9000;
}
ip地址不唯一, 但是一定是要从虚拟机内部可以访问到windows的地址, 这个地址可以是电脑连接wifi后获得的ip地址, 这里我使用的是电脑分配给VirtualBox的ip地址.
命令行输入下面的命令可以查看ip
ipconfig
3.修改ngnix的配置子文件
将conf.d文件夹中的default.conf文件复制一份,命名为gulimall.conf
修改gulimall.conf的内容
修改内容
#监听域名gulimall.com的请求
server_name gulimall.com;
#将gulimall.com/请求转发到上游服务器,
#gulimall是上游服务器配置的名称
location / {
proxy_set_header Host $host;
proxy_pass http://gulimall;
}
注意
proxy_set_header Host $host;
因为设置请求代理后会丢失很多东西, 比如请求头host, cookie等,
这里我们先把请求头加上, 后面有需要我们再加上其它的东西
重启nginx容器
docker resatrt 容器id
在gateway网关服务模块的配置文件中添加路由信息
- id: gulimall_host_route
uri: lb://gulimall-product
predicates:
- Host=gulimall.com
启动我们的网关服务模块, 商品服务模块
浏览器使用域名访问
http://gulimall.com/
这就表示配置成功了