- 一、第一次部署前置nginx
- 1、前提
- nginx的上游服务器指向网关项目
- nginx的镜像上传到阿里云镜像仓库
- 2、把nginx部署到k8s
- 2.1. 创建秘钥
- 创建失败
- 重新创建秘钥,成功
- 把gulimall-nginx上传到阿里云镜像仓库
- 2.2. 创建nginx服务
- 查看nginx端口号
- 测试访问nginx,ok
- 2.3. 创建ingress-controller
- 3.nginx设置前置访问路由
- 设置网关
- 创建负载均衡的网关,成功
- 设置应用路由
- 应用路由创建,成功
- 配置域名
- 测试域名访问nginx,ok
- 问题:gulimall.com映射到product的首页,失败
- 4.使用Dockerfile打包nginx镜像
- 二、
- 三、
- 四、
- 五、
- 六、
56.10的nginx的上游服务器指向网关项目,
nginx配置文件
nginx的上游服务器指向网关项目,镜像仓库是公开的
gulimall,配置中心,秘钥,创建
aliyun-docker
阿里云镜像仓库秘钥
下一步
registry.cn-shanghai.aliyuncs.com
阳光下的你0
6的qq@qq.com
lzl123456
创建
apiVersion: v1
kind: Secret
metadata:
namespace: gulimall
labels:
app: hub-docker
name: hub-docker
type: kubernetes.io/dockerconfigjson
spec:
template:
metadata:
labels:
app: hub-docker
data:
.dockerconfigjson:
username: 阳光下的你0
password: lzl123456
url: 'http://registry.cn-shanghai.aliyuncs.com'
email: 632078823@qq.com
创建失败
换一个阿里云账号,注册阿里云账号,lzl123456,huanhuan0,
阿里云镜像仓库登录密码 lzl123456
阿里云仓库地址:https://cr.console.aliyun.com/cn-hangzhou/instances/repositories
hub-docker,下一步
选择镜像仓库秘钥
http://registry.cn-hangzhou.aliyuncs.com
lzl123456
lzl123456
318284095@qq.com
创建
配置文件如下
apiVersion: v1
kind: Secret
metadata:
namespace: gulimall
labels:
app: hub-docker
name: hub-docker
type: kubernetes.io/dockerconfigjson
spec:
template:
metadata:
labels:
app: hub-docker
data:
.dockerconfigjson:
username: lzl123456
password: lzl123456
url: 'http://registry.cn-hangzhou.aliyuncs.com'
email: 318284095@qq.com
把gulimall-nginx上传到阿里云镜像仓库
登录新的阿里云镜像仓库
docker login -u lzl123456 -p lzl123456 registry.cn-hangzhou.aliyuncs.com
推送nginx镜像到阿里云镜像仓库
docker push registry.cn-hangzhou.aliyuncs.com/lzl123456/gulimall-nginx:v1.0
把镜像仓库设为公开
2.2. 创建nginx服务无状态服务, 创建
gulimall-nginx
下一步
添加容器,
lzl123456/gulimall-nginx:v1.0
使用默认端口
对号,下一步
下一步
外网访问
创建
对外暴露的80端口号是32187
http://192.168.56.100:32187
作用:让每个节点都可以访问80和443端口
80是http端口,443是https端口
指定的域名 来到任何节点的服务器,节点会按照域名转发到指定服务。
目前:nginx有了,可以通过ip和端口号访问。访问服务器不方便,怎么办?
给前置,搭建一个ingress-controller,即k8s的网关
k8s配置网关后,会给每台机器开启80和443端口
服务流程:
域名–>网关–>节点–>域名的服务器
怎么操作,见 3.nginx设置前置访问路由
3.nginx设置前置访问路由使用admin或者project-admin登录,开启网关路由功能
设置网关gulimall,项目设置,高级设置,设置网关,点击设置网关
gulimall,应用负载,应用路由,点击创建应用路由
gulimall-com
下一步
点击 添加路由规则
gulimall.com
点击对号,下一步
创建
不能是k8s的master节点,可以是其他节点
如:
192.168.56.101 gulimall.com
gulimall.com
访问gulimall.com,应该映射到product的首页,但是失败,怎么办?
重新打包,使用Dockerfile打包nginx镜像,
见 4.使用Dockerfile打包nginx镜像
4.使用Dockerfile打包nginx镜像把nginx放入电商(192.56.56.10)的opt下
Dockerfile内容
FROM nginx MAINTAINER leifengyang ADD html.tar.gz /usr/share/nginx/html ADD conf.tar.gz /etc/nginx EXPOSE 80 ENTRYPOINT nginx -g "daemon off;"
打包
docker build -t mynginx:v1.2 -f Dockerfile .
docker images
推送到阿里云镜像仓库
docker tag 483ddca64bc3 registry.cn-hangzhou.aliyuncs.com/lzl123456/gulimall-nginx:v1.2 docker login -u lzl123456 -p lzl123456 registry.cn-hangzhou.aliyuncs.com docker push registry.cn-hangzhou.aliyuncs.com/lzl123456/gulimall-nginx:v1.2二、 三、 四、 五、 六、



