新建项目到Jenkins中
在以Jenkins为镜像创建Docker容器时,我们在jenkins的dockerfile文件中写明了要安装Docker Compose,目的也是在Jenkins容器中借助Docker Compose来完成相关的操作。
一、容器中安装Docker Compose
1、同时安装Jenkins和Docker Compose:参照之前写过的文章安装Jenkins的同时也安装Docker Compose: https://www.cnblogs.com/CKExp/p/9536864.html
安装完毕,开始安装jenkins内部的插件,如有安装失败的插件,点击Retry重新安装。如果发现jenkins缺少东西,需要重装,则把/var/jenkins_home文件夹整体删除,重新安装。
2、只安装Jenkins,再进入容器后安装Docker Compose,进入Jenkins容器中 $ docker exec -it 容器ID /binbash 然后参照官网文档进行安装:https://docs.docker.com/compose/install/#install-compose
二、在Jenkins中新建项目
首先把系统时间修改一下,使用中国时区,在系统管理,脚本命令行中写入如下代码设置jenkins中的系统时间同步北京时间,方便后期做定时删除无效镜像使用。
System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')
1、点击新建项目按钮,输入一个项目名称。
2、配置项目的Git路径,如为私有项目,则增加凭证(Credentials)。
3、构建触发器,定时两分钟检查一次查看Git中是否有代码变更,
4、设置构建时间(建议将时长分配多一点,如果构建复杂应用,构建过程将会耗时很长)。
5、构建过程脚本,在这里使用docker compose完成相应的功能,
构建脚本具体如下,在此过程中指明了两个.yaml文件的具体位置,以项目的根目录为基准进入docker文件夹找到两个.yaml文件,然后docker compose将两个文件合并,停止并删除本地已有的容器、镜像、网桥、数据卷,然后重建:
#!/bin/bash
# 获取短版本号
GITHASH=`git rev-parse --short HEAD`
docker-compose -f ./docker/docker-compose.yml -f ./docker/docker-compose.override.yml -p surround down --rmi local --remove-orphans
docker-compose -f ./docker/docker-compose.yml -f ./docker/docker-compose.override.yml -p surround up -d --build
或可以使用如下命令,不在本地生成容器,而只生成镜像即可
#!/bin/bash # 获取短版本号 GITHASH=`git rev-parse --short HEAD` docker-compose -f ./docker/docker-compose.yml -f ./docker/docker-compose.override.yml -p surround down --rmi local --remove-orphans docker-compose -f ./docker/docker-compose.yml -f ./docker/docker-compose.override.yml -p multimap build
6、将镜像推送到镜像仓库中,方便后期的服务部署工作。
echo ---------------Push-Images...------------------ docker login -u=xxx用户名xxx -p=xxx密码xxx ccr.ccs.tencentyun.com docker-compose -f ./docker/docker-compose.yml -f ./docker/docker-compose.override.yml push
7、保存,配置结束,点击开始构建。
三、新建过程中可能出现的问题
在Jenkins中发布项目时,从控制台中查看到错误,并指明了docker compose报错,则进入jenkins容器,测试docker-compose --version ,能够正常显示则安装成功,如果jenkins中的docker compose附属安装失败,则在jenkins容器内重新安装docker, 通过命令进入容器:docker exec -it 容器ID /binbash,然后先删除已有的文件夹,跟随官网文档重新安装:https://docs.docker.com/compose/install/#install-compose 并测试docker-compose --version ,能够正常显示则安装成功,再次测试jenkins发布项目是否能够正常跑通。
本文地址:https://www.cnblogs.com/CKExp/p/9940479.html
欢迎关注微信订阅号,有新的文章将同步到订阅号中
2018-11-11,望技术有成后能回来看见自己的脚步