栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

JHipster | 01.JHipster创建项目及部署说明

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JHipster | 01.JHipster创建项目及部署说明

文章目录
  • 参考文章、视频
  • 操作系统与相关工具介绍
  • 1. 依赖安装
    • 1.1. Git、Node.js和screen的安装
    • 1.2. jdk11的安装
      • 1.2.1. 检测是否存在旧版本
      • 1.2.2. 安装JDK11
    • 1.3. 安装mysql(mariaDB)
    • 1.4. 安装generator-jhipster
  • 2. Jhipster创建、配置和启动单体项目
    • 2.1. Jhipster单体项目的创建
    • 2.2. 配置项目
    • 2.3. 启动项目
  • 3. Jhipster搭建微服务项目
    • 准备工作 - 为微服务创建数据库
    • 3.1. 从github下载注册中心(jhipster-registry)
    • 3.2. 使用jhipster指令创建并配置微服务(micro)
    • 3.3. 使用jhipster指令创建并配置网关(gateway)
    • 3.4. 启动项目
      • 3.4.1. 启动注册中心
      • 3.4.2. 启动微服务
      • 3.4.3. 启动网关

参考文章、视频

Jhipster官方文档

JHipster 7入门

微服务学习-Jhipster框架

操作系统与相关工具介绍

本文档的所有内容都是基于CentOS7.9实现的。该操作系统可以通过以下两种方式搭建:

  • 购买阿里云、腾讯云等云服务器;
  • 使用VMware Workstation创建虚拟机,详细流程可参考文章Linux服务器 | 12.安装并配置Linux虚拟机(CentOS7)。

项目搭建过程中,使用到的核心工具有:

  • Xshell 7 - 与Linux系统建立SSH连接,输入指令对系统进行操作;
  • Xftp 7 - 与Linux系统建立SFTP连接,用可视化的方式操作系统文件;
  • VMware - 创建Linux虚拟机(若购买了云服务器,则无需安装该软件)。

在开始阅读本文之前,需要先拥有一个操作系统为CentOS7的服务器或虚拟机,并安装好相应的工具或其替代品。

1. 依赖安装

在CetnOS7.9操作系统下,利用Jhipster创建项目之前,需要安装以下依赖:

  • 通过yum安装:

    – Git

    – Node.js

    – screen

    – jdk11+

    – mysql(MariaDB)

  • 通过npm安装:

    – generator-jhipster

1.1. Git、Node.js和screen的安装

Git和Node.js可直接通过以下指令安装。

yum install -y git
yum install -y nodejs
yum install -y screen

若提示No package xxx avaliable,可以尝试先安装epel源:

yum install -y epel-release
1.2. jdk11的安装 1.2.1. 检测是否存在旧版本

在安装jdk11之前,需要先检测系统是否已安装jdk。通过下方指令进行检测:

java -version
  • 若提示command not found,则说明不存在旧版本,就可以开始安装JDK11;

  • 若有输出版本信息,且为旧版,就需要通过下方指令卸载旧版JDK,才能安装JDK11:

    rpm -e --nodeps java*		# 卸载和java有关的所有依赖
    
1.2.2. 安装JDK11

输入下方指令,列出所有可安装的java-11

yum list | grep java-11

输入下方指令进行安装

yum -y install java-11-openjdk.x86_64
yum -y install java-11-openjdk-devel.x86_64
yum -y install java-11-openjdk-headless.x86_64
1.3. 安装mysql(mariaDB)

Linux中安装MySQL可参考文章 Linux服务器 | 03.Linux服务器安装MySQL;

若无法安装MySQL,说明当前版本的CentOS已不支持安装MySQL,需要安装MariaDB,可参考文章 Linux服务器 | 10.linux服务器安装MariaDB。

需要注意的是,在配置完账号密码后,不要忘了使MySQL允许被所有IP访问:

use mysql                                            #访问mysql库
update user set host = '%' where user = 'root';      #使root能再任何host访问
FLUSH PRIVILEGES;                                    #刷新

如果在update时报错:Duplicate entry ‘%-root’ for key ‘PRIMARY’,说明有多个user = 'root’的记录,此时进行查询:

select host from user where user = 'root';

若结果中有host = "%"的记录,就可以不用再配置了。

1.4. 安装generator-jhipster

输入下方指令安装jhipster。本文使用的jhipster版本为v7.8.1

npm install -g generator-jhipster
2. Jhipster创建、配置和启动单体项目 2.1. Jhipster单体项目的创建

JHipster官方教程

在一切准备就绪后,我们可以jhipster先创建一个单体项目。这里使用 Xshell 作为SSH连接工具进行演示:

  1. [ 连接服务器 ] 使用Xshell与服务器建立SSH连接。

  2. [ 创建文件夹 ] 首先创建项目文件夹(/jhipster-project/test-monolithic),并进入到文件夹中。

    mkdir /jhipster-project/test-monolithic
    cd /jhipster-project/test-monolithic
    
  3. [ 开启引导 ] 输入jhipster指令,开始引导。

    jhipster
    

    此后会输出一个欢迎页,并且开始向我们进行提问,如下图所示,前面带有 ? 的就是问题。回答问题的方法如下:

    • 单选题中,按回车键进行选择;
    • 多选题中,按空格键选择选项,按回车键确定选择。

  4. [ 根据需求回答问题 ] 根据我们的需求,逐步回答jhipster提出的问题。我们当前创建的是单体项目,使用JWT进行权限校验,使用MySQL作为数据库,不使用缓存,前端使用Vue框架,则可以按照下图所示进行选择:

    也可以根据自己的需求进行更改,有可能会出现新的问题分支,如果看不懂,百度即可。

  5. [ 等待jhipster创建项目 ] 上述问题全部回答完毕,JHipster就会开始创建项目。待jhipster提示你可以使用./mvnw启动项目,说明项目创建成功。

  6. **[ 创建数据库 ] **项目创建完毕后,还需要为该项目创建数据库。使用如下指令以root身份登录MySQL:

    mysql -uroot -p			# 随后会提示你输入密码,此时你的输入是不可见的;输入完毕后,回车即可
    

    登录成功后,使用create database指令创建数据库,并退出MySQL客户端:

    create database test_monolithic;
    quit;
    
2.2. 配置项目

项目创建完毕后,还需要配置项目的数据库信息,因为jhipster并不知道你的数据库账号密码,因此需要我们手动配置。

可以继续使用 Xshell 搭配vim指令修改项目的配置文件,也可以像本文一样使用 Xftp 以可视化的方式修改配置:

  1. [ 连接服务器 ] 使用 Xftp 与服务器建立SFTP连接。

  2. [ 打开配置文件 ] 进入到项目目录中的 /src/main/resources/config 中,打开配置文件。

    经过检查,我创建的项目数据库配置在了application-dev.yml

  3. [ 修改配置文件 ] 在文件中搜索"dataSource"快速定位:

    • 修改url,其中3306是MySQL服务的端口号,test_monolithic则是数据库名;若使用的是虚拟机,服务器ip地址不可填写localhost;
    • 修改username为你的MySQL登录账号,password为你的MySQL登录密码。

2.3. 启动项目

在一切准备就绪后,我们回到 Xshell ,使用指令启动项目:

  1. [ 启动项目 ] 进入到项目根目录,使用./mvnw运行脚本文件,即可启动项目。
cd /jhipster-project/test-monolithic
./mvnw

  1. [ 访问项目 ] 在浏览器中通过ip地址访问你的项目,默认端口为8080。

3. Jhipster搭建微服务项目

使用JHipster进行微服务

将一个大项目拆分成多个小项目,每个项目实现其中的一小块功能。小项目之间相互协调配合,当这些服务的功能都正常运作,这些项目就构建起一个整体的微服务。

JHipster可以快速地创建这些小项目,并通过配置,使这些小项目相互协调配合,构成微服务。

核心目标:从github中下载注册中心(jhipster-registry),根据上文提到的JHipster创建流程,使用JHipster分别创建一个 微服务(micro)和一个 网关(gateway)。在一切准备就绪后,按顺序启动他们,构建微服务。

准备工作 - 为微服务创建数据库
  1. [ 登录MySQL ] 使用如下指令登录到MySQL客户端。

    mysql -uroot -p			# 随后会提示你输入密码,此时你的输入是不可见的
    
  2. [ 创建数据库 ] 为微服务创建一个名为test_microservice的数据库,随后退出。

    create database test_microservice;
    quit;
    
3.1. 从github下载注册中心(jhipster-registry)

注册中心Registry源码

  • 它是一个Eureka服务,作为应用程序的发现服务器。该服务器维护并分发可用应用程序实例的动态列表,微服务随后使用这些列表来执行HTTP请求路由和负载平衡。
  • 它是一个Spring Cloud配置服务,为所有应用程序运行时提供配置。
  • 它还是一台管理服务器,具有用于监视和管理应用程序的仪表板。
  1. **[ 创建目录 ] **使用 Xshell 与服务器建立SSH连接,随后输入下方指令创建并进入目录。

    mkdir /jhipster-project/test-microservice
    cd /jhipster-project/test-microservice
    
  2. [ 下载源码 ] 使用git clone指令将注册中心源码下载到目录中(端口号8761)。

    git clone https://github.com/jhipster/jhipster-registry
    
3.2. 使用jhipster指令创建并配置微服务(micro)
  1. **[ 创建目录 ] **使用 Xshell 与服务器建立SSH连接,随后输入下方指令创建并进入目录。

    mkdir /jhipster-project/test-microservice/micro
    cd /jhipster-project/test-microservice/micro
    
  2. [ 创建项目 ] 使用jhipster指令开启引导,并根据需求回答问题以创建项目(端口号8081)。

  3. [ 配置微服务 ] 使用 Xftp 找到微服务的配置文件application-dev.yml,修改datasource下的数据库信息:

    • 修改url,其中3306是MySQL服务的端口号,test_monolithic则是数据库名;若使用的是虚拟机,服务器ip地址不可填写localhost;
    • 修改username为你的MySQL登录账号,password为你的MySQL登录密码。

3.3. 使用jhipster指令创建并配置网关(gateway)
  1. **[ 创建目录 ] **使用 Xshell 与服务器建立SSH连接,随后输入下方指令创建并进入目录。

    mkdir /jhipster-project/test-microservice/gateway
    cd /jhipster-project/test-microservice/gateway
    
  2. [ 创建项目 ] 使用jhipster指令开启引导,并根据需求回答问题以创建项目(端口号8080)。

  3. [ 配置网关 ] 使用 Xftp 找到网关的配置文件application-dev.yml,修改如下配置:

    • 修改 liquibase 和 r2dbc 下的url,其中3306是MySQL服务的端口号,test_monolithic则是数据库名;若使用的是虚拟机,服务器ip地址不可填写localhost;
    • 修改 r2dbc 下的username和password,其中username为你的MySQL登录账号,password为你的MySQL登录密码。
    • 修改 r2dbc 下的url为r2dbc:mysql://服务器ip地址:3306/test_microservice
    • 修改username为你的MySQL登录账号,password为你的MySQL登录密码。

3.4. 启动项目 3.4.1. 启动注册中心
  1. [ 开启screen ] 输入下方指令为注册中心开启一个单独的screen。

    screen -S jhipster-registry
    
  2. [ 启动项目 ] 进入到项目根目录,输入./mvnw启动项目。

    cd /jhipster-project/test-microservice/jhipster-registry
    ./mvnw
    

  3. [ 退出screen ] 按住Ctrl不放手,随后先按A,再按D,即可退出screen。

  4. [ 访问项目 ] 以 服务器ip:8761 作为url,在浏览器访问注册中心,默认账号和密码都是admin。

3.4.2. 启动微服务
  1. [ 开启screen ] 输入下方指令为注册中心开启一个单独的screen。

    screen -S micro
    
  2. [ 启动项目 ] 进入到项目根目录,输入./mvnw启动项目。

    cd /jhipster-project/test-microservice/micro
    ./mvnw
    

  3. [ 退出screen ] 按住Ctrl不放手,随后先按A,再按D,即可退出screen。

  4. [ 访问项目 ] 以 服务器ip:8081 作为url,在浏览器访问微服务。

  5. [ 查看注册情况 ] 以 服务器ip:8761 作为url,再次访问注册中心,可以看到项目micro已成功上线。

3.4.3. 启动网关
  1. [ 开启screen ] 输入下方指令为注册中心开启一个单独的screen。

    screen -S gateway
    
  2. [ 启动项目 ] 进入到项目根目录,输入./mvnw启动项目。

    cd /jhipster-project/test-microservice/gateway
    ./mvnw
    

    启动成功没有什么特别的提示,没有报错即可。

  3. [ 退出screen ] 按住Ctrl不放手,随后先按A,再按D,即可退出screen。

  4. [ 访问项目 ] 以 服务器ip:8080 作为url,在浏览器访问注册中心,默认账号和密码都是admin。

  5. [ 查看注册情况 ] 以 服务器ip:8761 作为url,再次访问注册中心,可以看到项目gateway已成功上线。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/865891.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号