云原生(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月前
|
运维 Dubbo Cloud Native
Dubbo 云原生重构出击:更快部署、更强控制台、更智能运维
Apache Dubbo 最新升级支持云原生,提供一键部署微服务集群与全新可视化控制台,提升全生命周期管理体验,助力企业高效构建云原生应用。
247 25
|
12月前
|
Kubernetes 监控 Cloud Native
云原生时代下的应用开发与部署实践
【10月更文挑战第4天】在云原生的浪潮中,开发者和运维人员面临着新的挑战和机遇。本文将通过实际案例,展示如何在云平台上高效地开发、部署和管理应用,同时确保系统的可扩展性和高可用性。我们将深入探讨容器化技术、微服务架构以及持续集成/持续部署(CI/CD)流程的实施策略,旨在为读者提供一套完整的云原生解决方案框架。
|
人工智能 安全 Cloud Native
阿里云云原生安全能力全线升级,护航百万客户云上安全
【重磅发布】9月20日,在杭州云栖大会上,阿里云宣布云原生安全能力全线升级,首次发布云原生网络检测与响应产品NDR(Network Detection Response,简称NDR)。同时,阿里云还宣布将持续增加免费的安全防护能力,帮助中小企业客户以极低投入完成基础的云上安全风险治理。
346 15
|
8月前
|
Cloud Native 安全 Serverless
云原生应用实战:基于阿里云Serverless的API服务开发与部署
随着云计算的发展,Serverless架构日益流行。阿里云函数计算(Function Compute)作为Serverless服务,让开发者无需管理服务器即可运行代码,按需付费,简化开发运维流程。本文从零开始,介绍如何使用阿里云函数计算开发简单的API服务,并探讨其核心优势与最佳实践。通过Python示例,演示创建、部署及优化API的过程,涵盖环境准备、代码实现、性能优化和安全管理等内容,帮助读者快速上手Serverless开发。
|
10月前
|
人工智能 缓存 异构计算
云原生AI加速生成式人工智能应用的部署构建
本文探讨了云原生技术背景下,尤其是Kubernetes和容器技术的发展,对模型推理服务带来的挑战与优化策略。文中详细介绍了Knative的弹性扩展机制,包括HPA和CronHPA,以及针对传统弹性扩展“滞后”问题提出的AHPA(高级弹性预测)。此外,文章重点介绍了Fluid项目,它通过分布式缓存优化了模型加载的I/O操作,显著缩短了推理服务的冷启动时间,特别是在处理大规模并发请求时表现出色。通过实际案例,展示了Fluid在vLLM和Qwen模型推理中的应用效果,证明了其在提高模型推理效率和响应速度方面的优势。
云原生AI加速生成式人工智能应用的部署构建
|
11月前
|
Kubernetes Cloud Native 微服务
云原生入门与实践:Kubernetes的简易部署
云原生技术正改变着现代应用的开发和部署方式。本文将引导你了解云原生的基础概念,并重点介绍如何使用Kubernetes进行容器编排。我们将通过一个简易的示例来展示如何快速启动一个Kubernetes集群,并在其上运行一个简单的应用。无论你是云原生新手还是希望扩展现有知识,本文都将为你提供实用的信息和启发性的见解。
|
11月前
|
敏捷开发 Kubernetes Cloud Native
阿里云云原生技术为企业提供了一套高效、灵活的解决方案,支持跨云部署与管理
在多云环境中,阿里云云原生技术为企业提供了一套高效、灵活的解决方案,支持跨云部署与管理。通过容器化、服务网格等技术,实现了应用的一致性与可移植性,简化了多云环境下的资源管理和服务治理,帮助企业应对复杂的云环境挑战,加速数字化转型。
233 5
|
11月前
|
监控 Cloud Native 持续交付
云原生技术深度解析:重塑现代应用开发与部署范式####
本文深入探讨了云原生技术的核心概念、关键技术组件及其在现代软件开发中的重要性。通过剖析容器化、微服务架构、持续集成/持续部署(CI/CD)等关键技术,本文旨在揭示云原生技术如何促进应用的敏捷性、可扩展性和高可用性,进而推动企业数字化转型进程。不同于传统摘要仅概述内容要点,本部分将融入具体案例分析,直观展示云原生技术在实际应用中的显著成效与挑战应对策略,为读者提供更加丰富、立体的理解视角。 ####
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
577 30
|
12月前
|
Kubernetes Cloud Native 持续交付
云原生技术:重塑现代应用开发与部署模式####
本文深入探讨了云原生技术的核心概念、发展历程及其在现代软件开发和部署中的关键作用。通过分析云原生架构的特点,如容器化、微服务、持续集成与持续部署(CI/CD),以及它如何促进应用的可伸缩性、灵活性和效率,本文旨在为读者提供一个关于云原生技术全面而深入的理解。此外,还将探讨实施云原生策略时面临的挑战及应对策略,帮助组织更好地把握数字化转型的机遇。 ####

热门文章

最新文章