从0开始搭建自动部署环境(续)
来源:互联网 发布:raphael min.js 下载 编辑:程序博客网 时间:2024/05/22 00:42
从0开始搭建自动部署环境(续)
前言
上一篇从0开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。本来应该写到上一篇中,但是这样做篇幅过长了。另外,此篇会使用自动部署一个同步在Github上的Spring Boot项目为例,介绍如何使用该自动部署环境。
配置Global Tool Configuration
继上一篇,登录jenkins,完成上一篇没有完成的后续配置。Jenkins——》系统管理——》Global Tool Configuration,在其中配置JDK、git、Maven。
Tool Configuration JDK 别名=openjdk1.8.0 JAVA_HOME=/usr/lib/jvm/java git Name=git Path to Git executable=/usr/bin/git Maven Name=maven3.5.2 MAVEN_HOME=/opt/apache-maven-3.5.2安装插件并重启
- Maven Integration plugin (Maven集成,否则新建的时候没有Maven Project)
- Deploy to container Plugin (部署到Java容器中的插件)
- Publish Over SSH (远程Shell)
- Monitoring (监控Jenkins所消耗的系统资源,如内存使用等)
插件安装完成后需要重启jenkins。http://ip:8080/restart
就能重启jenkins。
创建Docker本地仓库
参考Docker Registry 2.0
docker run -d -p 5000:5000 --restart always --name registry registry:2
新建项目
hello项目是我写的一个用来测试环境的Spring Boot项目,代码托管在github上。我想实现的是:jenkins每隔15分钟自动检查github上的hello项目源码,如果项目有更新,就自动获取更新打包部署。
新建——》构建一个Maven项目。名称就叫hello,点击“OK”跳转到项目配置页面。具体配置如下:
- 源码管理——》Git,Repository URL值为https://github.com/jeesun/hello
- 构建触发器——》Poll SCM——》日程表,值为H/15 * * * *
(设置每隔15分钟做一次检查)
- Build——》Goals and options,值为clean package docker:build
- Post Steps——》Add post-build step——》Execute shell,内容为
API_NAME="hello"API_VERSION="0.0.1"API_PORT=8761IMAGE_NAME="127.0.0.1:5000/com.jeesun/$API_NAME:$BUILD_NUMBER"CONTAINER_NAME=$API_NAME-$API_VERSIONcd $WORKSPACE/targetcp classes/Dockerfile .docker tag 127.0.0.1:5000/com.jeesun/$API_NAME $IMAGE_NAMEdocker push $IMAGE_NAMEcid=$(docker ps | grep "$CONTAINER_NAME" | awk '{print $1}')if [ "$cid" != "" ]; then docker rm -f $cidfidocker run -d -p $API_PORT:8080 --name $CONTAINER_NAME $IMAGE_NAME
配置完成后,点击“Save”。选择页面左侧的“立即构建”,如果顺利,访问http://ip:8761
,页面出现hello, new world
,说明成功。
注意事项
如果无法访问http://ip:8761
,需要确认防火墙是否关闭,或者选择开放8761端口。
参考
- jenkins new job 没有maven项目选项
- 使用Jenkins实现自动构建Maven项目
- Docker Registry 2.0
- 从0开始搭建自动部署环境(续)
- 从0开始搭建自动部署环境
- LAMP环境搭建,从0开始。
- win7从0开始搭建Vue开发环境
- 从0开始搭建javaee开发环境和下载项目
- 从0开始搭建hadoop2.X.X集群环境
- [从0开始学Android]-1.搭建编译环境
- 从Android开发环境搭建开始
- 【Android从入门开始】搭建开发环境
- 从0开始搭建阿里云(腾讯云)ubuntu16.04 nodejs + nginx + mysql + pm2 服务(四、pm2环境搭建)
- Jenkins+Maven+SVN搭建自动部署,自动测试环境
- Jenkins+Maven+SVN搭建自动部署,自动测试环境
- Jenkins+Maven+SVN搭建自动部署,自动测试环境
- Jenkins+Maven+SVN搭建自动部署,自动测试环境
- Jenkins+Maven+SVN搭建自动部署,自动测试环境
- CNTK从入门到深入研究(1) - 一切都从介绍和环境搭建开始
- 从0开始搭建自己的个人网站教程(三)如何把代码部署到虚拟主机
- 从0开始——1-搭建开发环境——java环境安装
- Javase—数组习题二
- Uber投资新进展,传软银下周公布购股报价
- DeepMind 最新进展:利用AI治疗乳腺癌
- About Messages and Message Queues
- 开发者的4个层级和6大差异
- 从0开始搭建自动部署环境(续)
- codeforces 895C Square Subsets 线性基 或 状压DP
- [C#] 谈谈异步编程async await
- 明佳巴巴新管理之“经营人”
- 用C语言实现一个自己的文件拷贝工具
- Nature Reviews:拥抱未知:解析土壤微生物组的复杂性
- pickle 在python 2和python 3中兼容性问题
- 如何用TensorFlow在安卓设备上实现深度学习推断
- 计算机视觉这一年:这是最全的一份CV技术报告