当前位置: 首页>编程语言>正文

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务

Jenkins+Docker+SpringCloud微服务持续集成

目录

  • 一:Jenkins+Docker+SpringCloud续集成流程说明
  • 微服务源码概述
  • 二: 本地部署SpringCloud微服务部署
  • 加载新项目,配置jdk
  • 安装配置Maven
  • 解压maven
  • 配置环境变量
  • 修改maven 仓库,配置下载源
  • 在idea里配置maven设置
  • 三:windows本地安装mysql 数据库,导入库
  • 本地安装mysql
  • 导入数据库
  • 四:修改微服务的配置文件,启动微服务
  • eureka_server
  • 启动zuul 网关服务
  • 启动权限中心admin_service
  • 开启业务微服务gathering
  • 五:安装postman,使用postman进行测试
  • 六:将微服务打包,本地运行
  • 七:安装Nodejs和python2
  • 八,安装运行VSCode

一:Jenkins+Docker+SpringCloud续集成流程说明

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven,第1张

大致流程说明:

1) 开发人员每天把代码提交到Gitlab代码仓库

2) Jenkins从Gitlab中拉取项目源码,编译并打成jar包,然后构建成Docker镜像,将镜像上传到Harbor私有仓库。

3) Jenkins发送SSH远程命令,让生产部署服务器到Harbor私有仓库拉取镜像到本地,然后创建容器。

4) 最后,用户可以访问到容器

微服务源码概述

项目架构:前后端分离

后端技术栈:SpringBoot+SpringCloud+SpringDataJpa(Spring全家桶)

微服务项目结构:

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_02,第2张

  • tensquare_parent: 父 工 程 , 存 放 基 础 配 置
  • tensquare_common:通用工程,存放工具类
  • tensquare_eureka_server:Eureka注册中心
  • tensquare_zuul:SpringCloud 的 网 关 服 务
  • tensquare_admin_service:基础权限认证中心,负责用户认证(WT认证)
  • tensquare_gathering:一个简单的业务模块,负责微服务相关逻辑

数据库结构

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_03,第3张

  • l tensquare_user:用户认证数据库,存放用户账户数据(登录)。对应tensquare_admin_service微服务
  • l tensquare_gathering:活动微服务数据库。对应tensquare_gathering微服务(用于展示出来)

微服务配置分析:

  • tensquare_eureka (注册中心)
  • tensquare_zuul (网关)
  • tensquare_admin_service (权限管理)
  • tensquare_gathering (业务)

二: 本地部署SpringCloud微服务部署

加载新项目,配置jdk

逐一启动微服务

微服务项目包解压,将tensquare_parent 项目目录放到idea的项目目录idea project中

然后在idea中点击open,选择项目,将项目在idea中打开,idea会自动下载相关组件插件(等待时间较长)

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_04,第4张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_05,第5张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_06,第6张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_07,第7张

右下角弹窗,点击Always Add

配置jdk

SpringBoot启动类报错can not resolve method 'run(java.lang.class,String [])',则是因为jdk配置问题

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_08,第8张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_09,第9张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_10,第10张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_11,第11张

每一个都要检查jdk配置

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_12,第12张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_13,第13张


安装配置Maven

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_14,第14张

解压maven

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_15,第15张

配置环境变量

添加两个新环境变量

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_16,第16张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_17,第17张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_18,第18张

添加maven命令到path路径

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_19,第19张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_20,第20张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_21,第21张

格式如C:\Users\wangxiang\apache-maven-3.8.4\bin;..............

win+r,输入cmd打开命令行界面,输入mvn -v 可以看到maven版本

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_22,第22张

修改maven 仓库,配置下载源

新建文件夹repo

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_23,第23张

打开maven的工作目录下的conf目录,打开settins.xml文件

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_24,第24张

修改组件地址为本地

<localRepository>C:/Users/wangxiang/repo</localRepository>

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_25,第25张

配置下载源

<mirror>
    <id>aliyunmaven</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>https://maven.aliyun.com/repository/public </url>
</mirror>

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_26,第26张

保存退出

在idea里配置maven设置

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_27,第27张

自动更新

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_28,第28张

maven 安装完毕后,每一个都不能有红色波浪线。有红色波浪线,表示有必要的组件没有下载完成。此时,最好删除项目文件 ,重新导入项目,删除缓存,然后,然后maven仓库,重新建立仓库,最后,再重新配置maven,下载组件

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_29,第29张

三:windows本地安装mysql 数据库,导入库

链接:https://pan.baidu.com/s/1v3T8tudglq_ikJpudbh_Lg?pwd=43uw 提取码:43uw

本地安装mysql

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_30,第30张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_31,第31张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_32,第32张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_33,第33张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_34,第34张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_35,第35张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_36,第36张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_37,第37张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_38,第38张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_39,第39张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_40,第40张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_41,第41张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_42,第42张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_43,第43张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_44,第44张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_45,第45张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_46,第46张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_47,第47张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_48,第48张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_49,第49张

导入数据库

配置mysql的bin目录到系统环境变量

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_50,第50张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_51,第51张

windows命令行登录进入数据库

mysql -uroot -p密码

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_52,第52张

创建两个数据库tensquare_gathering, tensquare_user

create database tensquare_gathering;
 create database tensquare_user;
 show databases;

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_53,第53张

导入数据库

use tensquare_user;

 source c:/Users/wangxiang/tensquare_user.sql;

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_54,第54张

use tensquare_gathering;
source c:/Users/wangxiang/tensquare_gathering.sql;

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_55,第55张

四:修改微服务的配置文件,启动微服务

eureka_server

修改配置文件

在eureka_server 项目----->src---->main--->resources---->application.yml

# 单机版
server:
  port: 10086

#基本服务器信息
spring:
  application:
    name: eureka-server  #服务ID

#enreka服务器配置
eureka:
  client:
    fetch-registry: false    #单机版关闭enreka相互注册
    register-with-eureka: false
    service-url:
      defaultZone:  http://localhost:${server.port}/eureka #暴露eureka服务访问地址
  server:
    enable-self-preservation: false #关闭自我保护

启动服务,浏览器访问

在eureka_server 项目----->src0---->main--->java---com.tensquare.eureka-->EurekaServerApplication--->右击,点击run....

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_56,第56张

配置都正确后,启动后会启动10086端口,使用浏览器访问localhost:10086

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_57,第57张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_58,第58张

启动zuul 网关服务

修改zuul 服务的配置文件aaplication.yaml

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_59,第59张

server:
  port: 10020 # 端口
  
# 基本服务信息
spring:
  application:
    name: tensquare-zuul # 服务ID
    
# Eureka配置
eureka:
  client:
    service-url:  
      defaultZone: http://localhost:10086/eureka # Eureka访问地址
  instance:
    prefer-ip-address: true
  
# 修改ribbon的超时时间
ribbon:
  ConnectTimeout: 1500 # 连接超时时间,默认500ms
  ReadTimeout: 3000  # 请求超时时间,默认1000ms
  
  
# 修改hystrix的熔断超时时间
hystrix:
  command:
    default:
      execution:
        isolation:
          thread:
            timeoutInMillisecond: 2000 # 熔断超时时长,默认1000ms
            

# 网关路由配置
zuul:
  routes:
    admin:
      path: /admin/**
      serviceId: tensquare-admin-service
    gathering:
          path: /gathering/**
          serviceId: tensquare-gathering

 # jwt参数
jwt:
  config:
    key: itcast
    ttl: 1800000

启动服务

启动 ZuulApplication

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_60,第60张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_61,第61张

在eureka界面,可以看到zuul 已经注册了

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_62,第62张

启动权限中心admin_service

修改配置文件

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_63,第63张

server: 
  port: 9001
spring: 
  application:  
    name: tensquare-admin-service #指定服务名
  datasource:  
    driverClassName: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/tensquare_user?characterEncoding=UTF8   #jdbc连接数据库
    username: root       #数据库用户名和密码
    password: abc123
  jpa: 
    database: mysql
    show-sql: true

#Eureka配置
eureka:
  client:
    service-url:
      defaultZone: http://localhost:10086/eureka,http://192.168.66.104:10086/eureka
  instance:
    lease-renewal-interval-in-seconds: 5 # 每隔5秒发送一次心跳
    lease-expiration-duration-in-seconds: 10 # 10秒不发送就过期
    prefer-ip-address: true


 # jwt参数
jwt:
  config:
    key: itcast
    ttl: 1800000

启动AdminApplication

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_64,第64张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_65,第65张

在eureka界面,可以看到admin-service 已经注册

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_66,第66张

开启业务微服务gathering

修该配置文件

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_67,第67张

server: 
  port: 9002
spring: 
  application:  
    name: tensquare-gathering #指定服务名
  datasource:  
    driverClassName: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/tensquare_gathering?characterEncoding=UTF8
    username: root
    password: abc123
  jpa: 
    database: mysql
    show-sql: true
#Eureka客户端配置
eureka:
  client:
    service-url:
      defaultZone: http://localhost:10086/eureka
  instance:
    lease-renewal-interval-in-seconds: 5 # 每隔5秒发送一次心跳
    lease-expiration-duration-in-seconds: 10 # 10秒不发送就过期
    prefer-ip-address: true

启动GatheringApplication

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_68,第68张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_69,第69张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_70,第70张

五:安装postman,使用postman进行测试

链接:https://pan.baidu.com/s/1rI97F8RHnOs-OoslBmN_GA?pwd=duyp 提取码:duyp

登录用户名,存放在导入的数据库中,登录微服务时,微服务去数据库中验证,只用数据库中的用户名和密码,才允许登录

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_71,第71张

安装postman

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_72,第72张

使用post 方式提交, 访问localhost:10020 ,对网关zuul 进行访问

http://localhost:10020/admin/admin/login

在body中,使用json 方式,以raw 行为添加,添加用户名密码

{
    "loginname":"admin",
    "password":"123456"
}

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_73,第73张

eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxMTk0MjgxNTMzMjMwNDE5OTY4Iiwic3ViIjoiYWRtaW4iLCJpYXQiOjE2NDYwMTY3MzQsInJvbGVzIjoiYWRtaW4iLCJleHAiOjE2NDYwMTg1MzR9.HOA1SkO1se23nx0FqudRQGz5kAbL-K8fDD8-4NOQPsY

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_74,第74张

六:将微服务打包,本地运行

在整个项目的配置pom.xml 文件中,添加配置

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_75,第75张

<build>
    <plugins>
        <plugin>
            <!--提供打包(将应用打包成可执行的jar包)-->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <!-- 指定maven编译的jdk版本 -->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <verbose>true</verbose>
                <fork>true</fork>
                <!--jdk地址-->
                <executable>C:/Program Files/Java/jdk1.8.0_152/bin/javac</executable>
            </configuration>
        </plugin>
    </plugins>
</build>

在idea里先停止EurekaServerApplication的运行

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_76,第76张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_77,第77张

在弹出的命令行界面,输入打包命令mvn clean package

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_78,第78张

打包成功后,生成了jar包,放在项目eureka的target目录中

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_79,第79张

进入到target 目录

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_80,第80张

在弹出的命令行, 使用java -jar tensquare_eureka_server-1.0-SNAPSHOT.jar 进行运行(idea里的eureka 需要先关闭)

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_81,第81张

运行成功后,使用浏览器访问localhost:10086端口

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_82,第82张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_83,第83张

至此,微服务后端部分连接数据数据库配置都完成。后续将配置前端方面NodeJS+VueJS+ElementUI

七:安装Nodejs和python2

链接:https://pan.baidu.com/s/16ohy8f4hx0whWNkOSJinMA?pwd=dgw0 提取码:dgw0

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_84,第84张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_85,第85张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_86,第86张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_87,第87张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_88,第88张

安装完毕后,将nodejs安装目录将npm命令,加入到系统path 环境变量中在命令行使用npm -v 命令

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_89,第89张

进入前端项目目录,启动cmd

前端项目:

链接:https://pan.baidu.com/s/1z58VWbMHSS6VWZmcqC4hPg?pwd=0xzn 提取码:0xzn

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_90,第90张

使用npm run dev 启动,此时会报错,原因是没有安装 python2

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_91,第91张

npm 启动报错

error in ./src/views/dashboard/index.vue

Module build failed: Error: Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime (93)

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_92,第92张

安装python2.7,全部默认即可

链接:https://pan.baidu.com/s/1AtI8-rIJnOfyKKS_kTdJ7g?pwd=7ldo 提取码:7ldo

安装好Python2.7后,将python2.7安装目录,加入到path环境变量中

来到前端项目目录,输入cmd,在当前前端项目目录打开命令行

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_93,第93张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_94,第94张

使用命令安装cnpm 命令。 由于npm 的服务器在国外,所以在使用npm执行时,可能会因为网的问题报错

npm install -g cnpm --registry=https://registry.npm.taobao.org

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_95,第95张

在tensquareAdmin目录下执行cnpm uninstall node-sass

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_96,第96张

执行cnpm install node-sass 命令

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_97,第97张

此时,在执行cnpm run dev 命令

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_98,第98张

启动后,出现这个登录页面。用户名admin 密码123456

此时还无法登录,因为前面的几个微服务关闭了。按照顺序,依次启动eureka,zuul,admin_service ,gathering 服务

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_99,第99张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_100,第100张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_101,第101张

八,安装运行VSCode

安装

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_102,第102张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_103,第103张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_104,第104张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_105,第105张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_106,第106张

在安装完毕,启动进入后,可以选择安装中文包

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_107,第107张

使用VSConde 打开前端项目

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_108,第108张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_109,第109张

打开项目后,在config文件夹下,index.js就是项目的首页文件

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_110,第110张

打开项目的终端。在顶部选择终端--->新建终端

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_111,第111张

此时可以在终端,vsconde的终端,使用npm run dev 命令,也可以运行前端项目

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_微服务_112,第112张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_113,第113张

注:vscode无法直接执行cnpm命令,需要以管理员身份打开才行(选择vscode图标,右击,以管理员身份运行)

在vscode 中直接运行 cnpm run dev 命报错如下:

cnpm : 无法加载文件 C:\Users\wangxiang\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_114,第114张

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_mysql_115,第115张

此时需要打开权限

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_116,第116张

此时再运行cnpm run dev 命令成功

jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务,jenkins 发布到docker环境 不适用jenkinsfile 使用shell脚本 jenkins部署docker微服务_maven_117,第117张




https://www.xamrdz.com/lan/5st1963274.html

相关文章: