KubeSphere打包部署程序

KubeSphere打包部署程序

一、本地项目打包,上传到horbor服务器

1、本地项目打包
1)后端Java程序打包(可以用IEDA工具打包,这里介绍是maven打包)

mvn clean
mvn install

2)前端Vue项目打包

npm run build:prod

2、打包镜像(需要在服务器上安装docker,具体不在这里介绍)
1)创建项目文件夹(首次)

mkdir cou
cd cou
# 创建目录cou-server存放后端打包程序
mkdir cou-server
# 创建目录cou-ui存放前端打包程序
mkdir cou-ui

2)后端配置

cd cou-server
# 创建jar文件夹存放jar包
mkdir jar
# 创建Dockerfile文件,用户打包镜像配置
vi Dockerfile

Dockerfile配置

# 基础镜像
FROM java:8
# author
MAINTAINER jy
# 挂载目录
VOLUME /home/cou
# 创建目录
RUN mkdir -p /home/cou
# 指定路径
WORKDIR /home/cou
# 复制jar文件到路径
COPY ./jar/*.jar /home/cou/cou.jar
EXPOSE 8080
# 启动应用
ENTRYPOINT ["java","-jar","-Duser.timezone=Asia/Shanghai","cou.jar"]

3)前端配置

cd cou-ui
# 创建文件夹html,用于存放前端打包代码
mkdir html
# 创建文件夹conf,用于存放nginx配置文件
mkdir nginx
# 创建Dockerfile文件
vi Dockerfile

Dockerfile配置

# 基础镜像
FROM nginx
# author
MAINTAINER jy
# 挂载目录
VOLUME /home/cou-ui
# 创建目录
RUN mkdir -p /home/cou-ui
# 指定路径
WORKDIR /home/cou-ui
# 复制conf文件到路径
COPY ./conf/nginx.conf /etc/nginx/nginx.conf
# 复制html文件到路径
COPY ./html/dist /home/cou-ui

conf配置

cd conf
# 创建nginx.conf文件
vi nginx.conf

nginx配置

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server { 
    	#服务配置
        listen       80;
        server_name  _;
        # 前端文件配置
	    location / { 
            root   /home/cou-ui;
	        try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
		# 后端接口配置
	    location /prod-api/ { 
	    	# 客户端最大文件传输大小
			client_max_body_size  100M;
			proxy_set_header Host $http_host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header REMOTE-HOST $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_pass http://cou-server.projects-2023:8080/;
		}
		# 错误页面
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

4)上传文件
后端jar包存放在jar文件夹下,前端dist存放到html文件夹下
5)打包镜像
在项目的目录,也就是Dockerfile所在的目录

docker build -t 172.27.160.229:32090/csdn/cou:v9 .

注意镜像的地址和版本,推送镜像的版本号与创建的要一致

6)镜像推送

docker push 172.27.160.229:32090/csdn/cou:v9

3、推送镜像到horbor服务器
未安装horbor参考搭建horbor服务器安装:
https://blog.csdn.net/qq_34313322/article/details/139659510

二、K8s平台部署项目

登录k8s平台

1、配置本地harbor仓库(秘钥配置,已配置完了就不需要再配置了)

位置:平台管理->集群管理->配置->保密字典
1)点击创建
2)填写基本信息
在这里插入图片描述
3)选择秘钥类型
4)添加仓库地址和用户信息,点击验证按钮进行验证
5)点击创建
在这里插入图片描述

2、存储卷配置

位置:平台管理->集群管理->存储->存储卷
1)点击创建
2)填写基本信息
在这里插入图片描述
3)选择访问方式和存储卷容量
在这里插入图片描述
4)点击创建

3、创建工作负载

1)菜单中找到应用负载,选择工作负载,部署中点击创建
在这里插入图片描述
2)填写基本信息后,点击下一步,添加容器镜像,选择
在这里插入图片描述

3)在仓库中选择要拉取的镜像,获取拉取命令
在这里插入图片描述

4) 选择存储卷
在这里插入图片描述
5)点击创建
在这里插入图片描述
6)查看容器运行状态
点击容器组,找到刚刚创建的容器,显示运行中则表示容器已经正常启动
在这里插入图片描述

4、创建服务

工作负载只能在集群内部工作,如果外部或其他容器想调用当前程序,则必须要创建服务来提供对外接口或对外访问服务
1)菜单中找到应用负载中的服务,点击创建
2)填写基本信息
3)指定工作负载,填写容器端口(内部程序端口)和服务端口(对外端口)
在这里插入图片描述

4)选择外部访问,选择访问模式为NodePort(对内服务不需要外部访问)
5)创建

5、访问服务

1)如果是后端服务,可以点击服务找到自己创建的服务点进去,可以看到DNS,其他服务可以通过DNS对该服务进行访问,一般在前端打包配置时,配置后端的访问地址时需要
在这里插入图片描述
2)如果是前端页面,可以在服务中找到外部访问的端口
可以通过集群中任意结点的ip+端口来直接访问
在这里插入图片描述

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值