当前位置: 首页 > news >正文

代理平台注册网站建设北京昨晚出什么大事

代理平台注册网站建设,北京昨晚出什么大事,在线做爰 视频网站,做的好微信商城网站CI/CD:GitLab-CI 自动化集成/部署 JAVA微服务的应用合集 CI/CD:GitLab-CI 自动化集成/部署 JAVA微服务的应用合集安装DockerGitLabGitLab-Runner阿里云容器仓库 GitLab-CIJava微服务的GitLab-CI应用 CI/CD:GitLab-CI 自动化集成/部署 JAVA微服…

CI/CD:GitLab-CI 自动化集成/部署 JAVA微服务的应用合集

  • CI/CD:GitLab-CI 自动化集成/部署 JAVA微服务的应用合集
    • 安装
      • Docker
      • GitLab
      • GitLab-Runner
      • 阿里云容器仓库
    • GitLab-CI
      • Java微服务的GitLab-CI应用

CI/CD:GitLab-CI 自动化集成/部署 JAVA微服务的应用合集

日常开发中,每次代码编写完成后,都需要手动打包,并且上传服务器,无论本地打包的时间或者上传文件到服务器都需要花费大量的时间来完成,都是重复的并且毫无意义,应该将时间花费在更有价值的时间上;所以编写这篇文章,将自己收集、搭建、测试的步骤或经验汇总一下,也欢迎大家提出或一起讨论更好的解决方案。

前置技能

  • Shell简单脚本编写(此项满足则说明了解并能够使用Linux)
  • Docker
  • Git
  • Java(可选,既然看了这篇文章,这个会的吧,不过无论自动化部署什么,原理都是相通的)

安装

因为都是本地测试,采用Docker容器来进行快速安装,减少部署所花费的时间,并且大部分之前都有写过对应的安装文章,这里就不重复粘贴了。

Docker

Docker离线安装

GitLab

Docker GitLab安装

GitLab-Runner

Docker GitLab-Runner安装

阿里云容器仓库

(未使用跳过),原本打算使用Harbor镜像私服仓库或者阿里云容器仓库,发现可以省略此步骤,将打包好的docker镜像直接通过宿主机运行(需要Runner配置docker in docker)。

GitLab-CI

进入到CI/CD的核心,语法部分,都是死的,这里推荐一篇文章,原本是b站的视频,发现有对应文章就直接浏览了一遍文章再进行测试,文章链接。

Java微服务的GitLab-CI应用

  1. 拉取gitlab-ci模版仓库,并上传到自己的gitlab上(注意CI/CD引入模版的代码仓库需要此仓库权限)

gitlab-ci模版仓库(develop分支):https://github.com/zsl0/devops-ci-template.git

  1. Java仓库项目目录下创建.gitlab-ci.yml文件

请添加图片描述

简化版本,能够满足代码提交后自动docker运行,注意需要根据需要运行的辅助配置stage为deploy的job任务,如下面配置的gatewayadmin服务器自动化部署,需要配置variables的三个变量IMAGE_NAMEMODULE_PATHJAR_NAME,分别对应服务名、服务模块相对路径、打包后的jar包名称。

项目相对路径:

请添加图片描述

.gitlab-ci.yml配置:

include:- project: 'zsl0/devops-ci-template'ref: developfile: 'templates/default-pipeline.yml'variables:## 全局配置GIT_CLONE_PATH: ${CI_BUILDS_DIR}/builds/${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}/${CI_PIPELINE_ID}GIT_CHECKOUT: "false"CACHE_DIR: "**/target/**.jar"## 作业控制RUN_PIPELINE_BUILD:   "yes"     #是否运行构建 yes/noRUN_PIPELINE_TEST:    "no"      #是否运行测试 yes/noRUN_CODE_ANALYSIS:    "no"     #是否代码扫描 yes/noRUN_BUILD_IMAGE:      "no"     #是否生成镜像 yes/noRUN_DEPLOY_ARTIFACTS: "no"      #是否上传制品 yes/noRUN_DEPLOY_K8S:       "no"     #是否发布K8S yes/noRUN_DEPLOY_DOCKER:    "yes"     #是否发布DOCKER yes/no## 依赖容器镜像BUILD_IMAGE: "registry.cn-hangzhou.aliyuncs.com/zsl0/maven-build:0.0.2"CURL_IMAGE: "curlimages/curl:7.70.0"SONAR_IMAGE: "sonarsource/sonar-scanner-cli:latest"KUBECTL_IMAGE: "lucj/kubectl:1.17.2"## 构建测试参数MAVEN_OPTS: "-Dmaven.repo.local=/home/gitlab-runner/ci-build-cache/maven "  #maven构建参数
#  BUILD_SHELL: 'mvn clean package  -DskipTests -P zsl0-prod'   #构建命令BUILD_SHELL: 'mvn clean package  -DskipTests -P hxkj-dev'   #构建命令#GRADLE_OPTS: ""               #gradle构建参数## 单元测试参数TEST_SHELL : 'mvn test   '       #测试命令JUNIT_REPORT_PATH: 'target/surefire-reports/TEST-*.xml'   #单元测试报告                                #项目扫描参数## 构建镜像#CI_REGISTRY: 'registry.cn-beijing.aliyuncs.com'               #镜像仓库地址#CI_REGISTRY_USER: '610556220zy'                               #仓库用户信息#CI_REGISTRY_PASSWD: 'xxxxxxxx.'                              #仓库用户密码IMAGE_NAME: "${CI_REGISTRY}/${CI_PROJECT_PATH}:${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"     #镜像名称DOCKER_FILE_PATH: "./Dockerfile"                              #Dockerfile位置## 上传制品库(artifactory)#ARTIFACTORY_URL: "http://192.168.1.200:30082/artifactory"     #制品库地址#ARTIFACTORY_NAME: "${CI_PROJECT_NAMESPACE}"                   #制品库名称#ARTIFACT_PACKAGE: "jar"                                       #制品类型#ARTIFACT_PATH: "target/*.${ARTIFACT_PACKAGE}"                 #制品位置#TARGET_FILE_PATH: "${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}/${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}"   #目标制品位置(目录结构)#TARGET_ARTIFACT_NAME: "${CI_PROJECT_NAME}-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}.${ARTIFACT_PACKAGE}"   #目标制品名称## 部署应用k8sAPP_NAME: "$CI_PROJECT_NAME"                #应用名称 <-->deploymentNameCONTAINER_PORT: "8081"                      #服务端口 <--> servicesPortNAMESPACE: "$CI_PROJECT_NAME-$CI_PROJECT_ID-$CI_ENVIRONMENT_SLUG"             #名称空间ENV_URL: "${ENV_NAME}.${CI_PROJECT_NAMESPACE}.${CI_PROJECT_NAME}.devops.com"  #IngressHostscache:paths:# 后续修改解决mvn打包repository缓存问题,需要根据路径设置本地仓库路径- /root/.m2/repository- /opt/repository- ~/.m2/repository- ${CACHE_DIR}## 构建作业
build:# 指定Runner,不指定默认使用共享Runnertags:- runner-java## 部署
## gateway Docker自动化部署
deploy-gateway:stage: deployimage: docker:latesttags:- runner-javaextends: .deploy_dockervariables:# 镜像名称,默认使用服务名IMAGE_NAME: "gateway"# 模块路径MODULE_PATH: "data-center/gateway/"# jar包名称JAR_NAME: gateway.jar## gateway Docker自动化部署
deploy-admin-server:stage: deployimage: docker:latesttags:- runner-javaextends: .deploy_dockervariables:# 镜像名称,默认使用服务名IMAGE_NAME: "admin-server"# 模块路径MODULE_PATH: "data-center/admin/admin-server/"# jar包名称JAR_NAME: admin-server.jar
  1. 创建Dockerfile_template模版
FROM openjdk:11MAINTAINER 249269610@qq.comWORKDIR /opt/jarRUN mkdir -p /opt/shell/
#ADD /zsl0/shell/ /opt/shell/RUN mkdir -p /opt/jar/
ADD MODULE_PATH/target/JAR_NAME /opt/jar/java-program.jarENTRYPOINT ["java", "-jar"]
CMD ["java-program.jar"]
http://www.hkea.cn/news/118660/

相关文章:

  • 做网站横幅 的网站推荐几个公司推广
  • html5国内网站建设客户管理软件
  • 网站建设报价单站长工具 seo查询
  • 日本电商网站贵州快速整站优化
  • 物业服务网站建设建立网站要多少钱一年
  • 中铁建设门户加长版廊坊百度提升优化
  • 最便宜的外贸网站建设电商平台运营方案
  • 做网站应该会什么问题网络营销软文范例500字
  • 摄影网课百度关键词优化查询
  • 打广告型的营销网站西安百度推广外包
  • 乌鲁木齐招聘网站建设一站式网络营销
  • 中小型网站建设服务淘宝数据分析工具
  • 梧州网站设计企业网站模板建站
  • 行政事业单位网站建设建议营销策划公司
  • 网络推广网站怎么做百度联盟广告点击一次收益
  • wordpress居中样式宁波seo网络推广外包报价
  • java做网站用到哪些技术网络营销的重要性与意义
  • 网络营销推广的作用谷歌seo什么意思
  • 免费网站建设解决方案郑州网络营销公司哪个好
  • 转转怎么做钓鱼网站税收大数据
  • 株洲专业网站排名优化深圳产品网络推广
  • 深圳美食教学网站制作如何免费搭建自己的网站
  • 兰州移动端网站建设广东整治互联网霸王条款
  • 彩票网站该怎么建设天津seo实战培训
  • 原平的旅游网站怎么做的新冠疫情最新情况最新消息
  • 网站开发软件著作权归谁seo外包
  • 小说网站的网编具体做哪些工作南宁网站快速排名提升
  • 承德网站设计seo互联网营销培训
  • 工信部网站备案查询 手机seo专员的工作内容
  • 淘宝活动策划网站视频营销成功的案例