Jenkins ( jenkins+harbor)
Harbor 是咱们国产的docke仓库具体详细了解请参考以下连接
https://blog.csdn.net/csdn_duomaomao/article/details/78036331
http://blog.itpub.net/28624388/viewspace-2153546
如何将Jenkins和Harbor 相互结合,下图是比较理想的状态,当然还缺一下管理工具等等

当你部署完harbor之后,创建好相应的项目,以及用户信息。
接下来就开始配置Jenkins了
前面Jenkins的配置 跟我之前写的博客有重复所以不在这一一列举了

这个部分就是你的java代码构建之后进行的操作
脚本内容
#!/bin/bash
#获取镜像id
imagesid=`docker images|grep -i docker-harbor|awk '{print $3}'`
project=/harbor_repo/
#dockerid=`docker ps -a|grep -i docker-test|awk '{print $1}' `
echo $project
#判断镜像是否存在如果存在则删除,否则不删除
if [ ! -n "$imagesid" ];then
echo $imagesid "is null"
else
docker rmi -f $imagesid
fi
#进入工作目录
cd $project
#生成新的镜像 docker build -t docker-harbor . #登录docker仓库
docker login -u admin -p Harbor12345 192.168.10.110 #上传镜像到镜像仓库 docker tag docker-harbor 192.168.10.110/my_data/docker-harbor:1 docker push 192.168.10.110/my_data/docker-harbor:1
最终达到效果
Jenkins输出日志
Sending build context to Docker daemon 45.6 MB Step 1/4 : FROM java8
---> 6a6b9be10cdd
Step 2/4 : ADD ./target/raymedy.war /root/apache-tomcat-7.0.92/webapps
---> 67b92d6b55ec
Removing intermediate container 0f072b0eea0b
Step 3/4 : EXPOSE 8080
---> Running in 444cd5db90ae
---> bd9eca176876
Removing intermediate container 444cd5db90ae
Step 4/4 : CMD /root/apache-tomcat-7.0.92/bin/catalina.sh run
---> Running in dd3040e31d2f
---> 4030cf9e821e
Removing intermediate container dd3040e31d2f
Successfully built 4030cf9e821e
Login Succeeded
The push refers to a repository [192.168.10.110/my_data/docker-harbor]
e2d60c921771: Preparing
8bd3de159ec9: Preparing
3cded00e5415: Preparing
071d8bd76517: Preparing
071d8bd76517: Layer already exists
8bd3de159ec9: Layer already exists
3cded00e5415: Layer already exists
e2d60c921771: Pushed
1: digest: sha256:0c1b67f4d4d3f994a5fc517d02115513933bd25d237e76ce9a6d8e38e8a58b1f size: 1165
SSH: EXEC: completed after 4,803 ms
SSH: Disconnecting configuration [192.168.10.110] ...
SSH: Transferred 2 file(s)
Finished: SUCCESS
镜像自动更新,这样其他地方就可以直接获取docker镜像文件了

不足之处请多指教
Jenkins ( jenkins+harbor)的更多相关文章
- 第四十章 微服务CICD(2)- jenkins(war版)
一.下载 官网下载war包,放在tomcat下的webapps下, 第一章 tomcat安装与启动 第二章 部署war包到tomcat jenkins:2.19.1版本. 二.修改编码为utf-8 在 ...
- 持续集成之Jenkins(坏老头)
点击关注哦↑↑↑↑↑↑↑↑↑ 持续集成 有关持续集成的简介,可参考我此前的文章:http://blog.csdn.net/benkaoya/article/details/44993583 Jenki ...
- Web API 持续集成:PostMan+Newman+Jenkins(图文讲解)
本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 上篇文章我们已经完成了API测试工具选型,接下来是一系列周期性的开发 ...
- Tomcat 部署 Jenkins (Linux系统)
环境说明:Linux环境,CentOS 7版本. 关于部署tomcat,见上一篇博客:https://www.cnblogs.com/lelelong/p/10252225.html 接着,在Tomc ...
- debian系(Ubuntu)安装jenkins(持续集成)
wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add - sudo sh -c 'ec ...
- 如何彻底卸载Jenkins(Windows版本)
起因: 最近在做持续集成测试过程中遇到一个问题,之前部署的Jenkins管理员密码忘了之后无法登陆,而且删除掉tomcat下webapps文件夹中的Jenkins目录后,再次安装Jenkins后相关的 ...
- Jenkins: 基础篇(环境配置)
自动化领域比较有影响力的开源框架jenkins,确实比较强大,易用.很多公司将其用来做持续即成CI(continuous integration).为了拓展和强化自己的软件设计生态系统,也将很久前使用 ...
- 搭建jenkins环境(linux操作系统)
一.虚拟机安装 1) Virtualbox安装 2) 新建镜像(将已有镜像导入) 3) 开通本地远程访问虚拟机的权限 3.1 通过本地的mac地址设置本地连接固定的ip地址.子网掩码.默认网关 ...
- jenkins(一)集成环境搭建示例
一.环境准备 1.安装java环境 测试自己机器是否已安装,在dos上运行java-version ,出现如下类似结果表示安装完成 2.安装Git/svn git具体配置见我的博客 “GitHub使用 ...
随机推荐
- Socket.io详解
socket.io是一个跨浏览器支持WebSocket的实时通讯的JS. http://socket.io/docs/ 由于HTTP是无状态的协议,要实现即时通讯非常困难.因为当对方发送一条消息时,服 ...
- git fork , git pull request那回事
git fork 原理 相当于你在原项目的主分支上又建立了一个分支,你可以在该分支上任意修改,如果想将你的修改合并到原项目中时,可以pull request,这样原项目的作者就可以将你修改的东西合并到 ...
- Spring-构造注入&注解注入&代理模式&AOP
1. 课程介绍 1. 依赖注入;(掌握) 2. XML自动注入;(掌握) 3. 全注解配置;(掌握) 4. 代理模式;(掌握) 5. AOP;(掌握) 依赖注入;(掌握) 2.1. 构 ...
- Yaml spring boot 二维数组写法
Yaml channel: info: - channel-ip: 192.168.1.40 channel-no: 5182001001 - channel-ip: 192.168.1.10 cha ...
- java的多线程:线程基础
1.线程与进程区别 每个正在系统上运行的程序都是一个进程.每个进程包含一到多个线程.线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行.也可以把它理解为代码运行的上下文.所以线程基本上是 ...
- Spring Security OAuth2.0认证授权四:分布式系统认证授权
Spring Security OAuth2.0认证授权系列文章 Spring Security OAuth2.0认证授权一:框架搭建和认证测试 Spring Security OAuth2.0认证授 ...
- 【JavaWeb】JSON 文件
JSON 文件 什么是 JSON JSON(JavaScript Object Notation),即 JS 对象符号. 是一种轻量级(相对于 XML 来说)的数据交换格式,易于阅读和编写,同时也易于 ...
- LeetCode704 二分查找
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1. 示例 1: 输入: num ...
- idea中文注释出现乱码,我靠自己解决了
如果你像我一样️,查遍google百度,半天下来还是找不到解决方案,说不定这篇博客能帮助你顺利解决呢 好了,那么开始说说我是怎么解决麻烦的. 首先,我想打开一份java文稿.光预览,它是没有任何问题的 ...
- 2021年正确的Android逆向开发学习之路
2021年正确的Android逆向开发学习之路 说明 文章首发于HURUWO的博客小站,本平台做同步备份发布.如有浏览或访问异常或者相关疑问可前往原博客下评论浏览. 原文链接 2021年正确的Andr ...