云原生(8)-Ruoyi手动云上部署

简介: Ruoyi手动云上部署

将RuoyiCloud部署到云上环境 RuoyiCloud地址: https://gitee.com/y_project/RuoYi-Cloud

默认RuoyiCloud已可以在本地启动,且前台正常登录

本次部署使用kubeSphere,为Linux单节点部署,有条件可以多节点

使用的服务器为阿里云ECS,8c16g

kubeSphere的安装参考之前的文章

云上部署分为以下几个环节


1. 中间件部署

部署RuoyiCloud所需中间件

Mysql,Redis,Nacos

2. 微服务部署

将RuoyiCloud的各个组件打包成镜像发布

2.1 开通阿里云容器镜像服务

其他类似容器服务也可以


2.2 docker登录

#登录dockerlogin--username=德玛西亚所向披靡registry.cn-wulanchabu.aliyuncs.com#输入开通容器服务的密码




2.3 打包镜像

2.3.1 准备Dockerfile

ruoyi项目里已经有基本的Dockerfile,修改下即可使用

2.3.1.1 前端Dockerfile

#基础镜像FROMnginx#authorMAINTAINERzy#挂载目录VOLUME/home/ruoyi/projects/ruoyi-ui#创建目录RUNmkdir-p/home/ruoyi/projects/ruoyi-ui#指定路径WORKDIR/home/ruoyi/projects/ruoyi-ui#复制conf文件到路径COPY ./conf/nginx.conf/etc/nginx/nginx.conf#复制html文件到路径COPY ./html/dist/home/ruoyi/projects/ruoyi-ui



2.3.1.2 后端微服务Dockerfile

后端做了通用的配置,在启动时指定镜像为prod,并指定生产环境nacos

#基础镜像FROMopenjdk:8-jdk#authorMAINTAINERzyENVPARAMS="--server.port=8080 \--spring.profiles.active=prod \--spring.cloud.nacos.discovery.server-addr=his-nacos.his:8848 \--spring.cloud.nacos.config.server-addr=his-nacos.his:8848 \--spring.cloud.nacos.config.namespace=prod \--spring.cloud.nacos.config.file-extension=yml"RUN/bin/cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime&&echo'Asia/Shanghai'>/etc/timezone#复制jar文件到路径COPYtarget/*.jar /app.jar# 启动服务ENTRYPOINT ["/bin/sh","-c","java -Dfile.encoding=utf8 -Djava.security.egd=file:/dev/./urandom -jar app.jar ${PARAMS}"]


2.3.2 打包镜像

将jar包和Dockerfile上传到安装了docker的机器

目录如下:

后端jar包放置于target中,符合Dockerfile中指定的目录


前端包放置于html中,符合Dockerfile中指定的目录

2.3.2.1 编译镜像&推送镜像到阿里云

# 编译命令  -f [Dockerfile文件] 可以省略,默认寻找当前目录下Dockerfile文件docker build -t [镜像名:版本] -f [Dockerfile文件] .
example:
docker build -t ry-system:v1 -f Dockerfile .
# 打标签 使标签符合阿里云容器镜像服务的标准docker tag [imageid] [新的标签]
example:
docker tag [system的镜像id] registry.cn-wulanchabu.aliyuncs.com/mydocker_zy/ry-system:v1
# 推送镜像 在docker login成功的前提下docker push [tag:版本号]
example:
docker push registry.cn-wulanchabu.aliyuncs.com/mydocker_zy/ry-system:v1


2.4 部署到kubeSphere

使用KubeSphere+Jenkins的方式,编写jenkenis文件来手动的发布

3. 网络环境

需要在k8s环境下联通微服务和各个中间件的网络环境,一般为局域网内连接,不走公网

同样在k8s的搭建中我们看到可以在集群内部使用ClusterIP的方式在集群内部互连

4. 配置分离

即本地环境和生产环境的配置可能不一样,需要配置隔离开,一般通过配置中心解决

目录
相关文章
|
2月前
|
Kubernetes 监控 Cloud Native
云原生时代下的应用开发与部署实践
【10月更文挑战第4天】在云原生的浪潮中,开发者和运维人员面临着新的挑战和机遇。本文将通过实际案例,展示如何在云平台上高效地开发、部署和管理应用,同时确保系统的可扩展性和高可用性。我们将深入探讨容器化技术、微服务架构以及持续集成/持续部署(CI/CD)流程的实施策略,旨在为读者提供一套完整的云原生解决方案框架。
|
3月前
|
人工智能 安全 Cloud Native
阿里云云原生安全能力全线升级,护航百万客户云上安全
【重磅发布】9月20日,在杭州云栖大会上,阿里云宣布云原生安全能力全线升级,首次发布云原生网络检测与响应产品NDR(Network Detection Response,简称NDR)。同时,阿里云还宣布将持续增加免费的安全防护能力,帮助中小企业客户以极低投入完成基础的云上安全风险治理。
191 15
|
3月前
|
运维 Kubernetes Cloud Native
云原生时代下,如何高效构建与部署微服务
【9月更文挑战第8天】随着云计算技术的飞速发展,云原生已成为现代软件架构的重要趋势。本文将深入浅出地介绍云原生概念、微服务架构的优势以及如何在云平台上高效构建和部署微服务。我们将通过实际的代码示例,展示在Kubernetes集群上部署一个简单的微服务应用的过程,帮助读者理解云原生环境下的微服务开发和运维实践。
|
9天前
|
人工智能 缓存 异构计算
云原生AI加速生成式人工智能应用的部署构建
本文探讨了云原生技术背景下,尤其是Kubernetes和容器技术的发展,对模型推理服务带来的挑战与优化策略。文中详细介绍了Knative的弹性扩展机制,包括HPA和CronHPA,以及针对传统弹性扩展“滞后”问题提出的AHPA(高级弹性预测)。此外,文章重点介绍了Fluid项目,它通过分布式缓存优化了模型加载的I/O操作,显著缩短了推理服务的冷启动时间,特别是在处理大规模并发请求时表现出色。通过实际案例,展示了Fluid在vLLM和Qwen模型推理中的应用效果,证明了其在提高模型推理效率和响应速度方面的优势。
云原生AI加速生成式人工智能应用的部署构建
|
23天前
|
Kubernetes Cloud Native 微服务
云原生入门与实践:Kubernetes的简易部署
云原生技术正改变着现代应用的开发和部署方式。本文将引导你了解云原生的基础概念,并重点介绍如何使用Kubernetes进行容器编排。我们将通过一个简易的示例来展示如何快速启动一个Kubernetes集群,并在其上运行一个简单的应用。无论你是云原生新手还是希望扩展现有知识,本文都将为你提供实用的信息和启发性的见解。
|
24天前
|
敏捷开发 Kubernetes Cloud Native
阿里云云原生技术为企业提供了一套高效、灵活的解决方案,支持跨云部署与管理
在多云环境中,阿里云云原生技术为企业提供了一套高效、灵活的解决方案,支持跨云部署与管理。通过容器化、服务网格等技术,实现了应用的一致性与可移植性,简化了多云环境下的资源管理和服务治理,帮助企业应对复杂的云环境挑战,加速数字化转型。
39 5
|
1月前
|
监控 Cloud Native 持续交付
云原生技术深度解析:重塑现代应用开发与部署范式####
本文深入探讨了云原生技术的核心概念、关键技术组件及其在现代软件开发中的重要性。通过剖析容器化、微服务架构、持续集成/持续部署(CI/CD)等关键技术,本文旨在揭示云原生技术如何促进应用的敏捷性、可扩展性和高可用性,进而推动企业数字化转型进程。不同于传统摘要仅概述内容要点,本部分将融入具体案例分析,直观展示云原生技术在实际应用中的显著成效与挑战应对策略,为读者提供更加丰富、立体的理解视角。 ####
|
2月前
|
Kubernetes Cloud Native 持续交付
云原生技术:重塑现代应用开发与部署模式####
本文深入探讨了云原生技术的核心概念、发展历程及其在现代软件开发和部署中的关键作用。通过分析云原生架构的特点,如容器化、微服务、持续集成与持续部署(CI/CD),以及它如何促进应用的可伸缩性、灵活性和效率,本文旨在为读者提供一个关于云原生技术全面而深入的理解。此外,还将探讨实施云原生策略时面临的挑战及应对策略,帮助组织更好地把握数字化转型的机遇。 ####
|
2月前
|
Cloud Native 持续交付 云计算
云端新纪元:探索云原生技术的奥秘在当今数字化时代,云计算已成为推动企业创新和增长的关键动力。随着云平台的不断成熟,云原生技术应运而生,以其独特的优势引领着一场新的技术革命。本文将深入探讨云原生的核心概念、主要特点以及它如何改变现代软件开发和部署的方式,为您揭开云原生这一神秘面纱。
云原生是一种构建和运行应用程序的方法,充分利用了云平台的弹性、分布式本质以及声明式基础设施。本文将解析云原生的十二要素,微服务架构的优势,以及容器化、持续集成与持续部署(CI/CD)等核心技术的实践应用。通过深入浅出的方式,让读者理解云原生不仅是一种技术,更是一种文化和方法论,它正在重塑软件开发流程,提高资源利用率和应用系统的可扩展性与容错性。
|
1月前
|
监控 Cloud Native 微服务
云端漫步:探索云原生应用的构建与部署
【10月更文挑战第32天】在数字时代的浪潮中,云原生技术如同一艘航船,承载着企业的梦想驶向未知的海洋。本文将带你领略云原生应用的魅力,从基础概念到实战操作,我们将一步步揭开云原生的神秘面纱,体验它如何简化开发、加速部署,并提升系统的可扩展性与可靠性。让我们一起启航,探索云原生的世界!
下一篇
DataWorks