您的位置:首页 > 其它

从0开始搭建自动部署环境(续)

2017-11-27 06:31 363 查看

从0开始搭建自动部署环境(续)

前言

上一篇从0开始搭建自动部署环境虽然环境搭建起来了,但是配置少了一部分步骤。本来应该写到上一篇中,但是这样做篇幅过长了。另外,此篇会使用自动部署一个同步在Github上的Spring Boot项目为例,介绍如何使用该自动部署环境。

配置Global Tool Configuration

继上一篇,登录jenkins,完成上一篇没有完成的后续配置。Jenkins——》系统管理——》Global Tool Configuration,在其中配置JDK、git、Maven。

ToolConfiguration
JDK别名=openjdk1.8.0
JAVA_HOME=/usr/lib/jvm/java
gitName=git
Path to Git executable=/usr/bin/git
MavenName=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=8761

IMAGE_NAME="127.0.0.1:5000/com.jeesun/\(API_NAME:\)BUILD_NUMBER"

CONTAINER_NAME=\(API_NAME-\)API_VERSION

cd \(WORKSPACE/target cp classes/Dockerfile . docker tag 127.0.0.1:5000/com.jeesun/\)API_NAME $IMAGE_NAME

docker push $IMAGE_NAME

cid=\((docker ps | grep "\)CONTAINER_NAME" | awk '{print \(1}') if [ "\)cid" != "" ]; then

docker rm -f $cid

fi

docker 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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: