Bluemix结合DevOps Service实现一键部署
林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka
摘要:本文讲述了怎样通过Bluemix与DevOps Service相结合。来构建与部署一个持续集成的Java Web项目。事实上原理就是将代码放在DevOps Service上。然后提交代码。DevOps Service配置构建作业、部署作业。自己主动将project构建结果推送到个人Bluemix中心。这样每次要在Bluemix上更新应用程序时,我们仅仅需将代码git push到DevOps Service上。然后点击构建、部署button就可以。不用再使用cf push等命令,也用不着在本电脑来登陆bluemix.能够大大提交开发效率。
一、DevOps Service上创建项目
所以须要到https://hub.jazz.net/,注冊一个账号。
并创建一个项目。
步骤例如以下。
输入项目名、类型
选择和Bluemix关联
设置个人Bluemix的空间、组织及项目的一些信息(如是否是私人项目)
之后点击CREATEV就可以。
之后你的注冊邮箱就会收到此项目的信息:
使用git clone 项目网址就可以将项目下载到本地。
打开进入项目,将我们本地的project拉进去,然后使用git add 、git commit、git push依次,将本地项目提交到远程的GIT
然后进入 项目:https://hub.jazz.net/project/bingbing/MyGame/overview
能够看到,代码已提交成功。
当中。JavaHelloWorld这是一个Maven项目
其结构例如以下:
这里须要特别说明下:mainfest.yml是上传project到Bluemix时的配置文件。其内容例如以下:
applications:
- path: target/JavaHelloWorld-0.0.1-SNAPSHOT.war
memory: 512M
instances: 1
domain: mybluemix.net
name: JavaHelloJavaHello
host: javahellojavahello
disk_quota: 1024M
当中javahellojavahello是在Bluemix中创建的Java web项目。创建过程见以下
二、Bluemix创建web项目javahellojavahello
登陆Bluemix
选择Web项目
选择Java项目
依次输入项目名。
最后创建结果例如以下:
三、DevOps Services配置自己主动编译、自己主动部署到Bluemix
打开DevOps Services上的项目。在其主页上点击右上角的BUILD& DEPLOY
创建一个编译作业
先选择GIT项目
这时先不要点击保存:
点击作业。加入作业。选择构建
选择Maven项目,输入构建命令
同理,再创建一个部署作业
依次输入应用程序名,部署脚本等
之后确定保存就可以。
这是最后的结果:
之后点击执行button:
好了。接下去它会自己主动去构建项目,并将项目发部到个人Bluemix上相应的应用程序。之后执行结果成功如上。
也能够点击查看日志和历史记录
然后回到Bluemix,打开仪表板
能够看到这个应用程序已经和Jazz上的项目连接起来了
打开网址:http://javahellojavahello.mybluemix.net/
就可以訪问。
四、创建一键部署button
将以下的代码加入到自己的网页中
<p>
<a target="_blank" href="https://hub.jazz.net/git/Devops项目(如:https://hub.jazz.net/git/bingbing/MyGame)"><img src="https://bluemix.net/deploy/button.png" alt="部署到 Bluemix" /></a>
</p>
这是我的:

结束语:事实上这样的持续部署就像是使用svn/git,然后结合JenKins来实现项目的构建、部署、測试三个过程。
原理都基本上几乎相同。
Bluemix结合DevOps Service实现一键部署的更多相关文章
- 容器镜像服务联手 IDE 插件,实现一键部署、持续集成与交付
容器技术提供了一种标准化的交付方式,将应用的代码以及代码环境依赖都打包在一起,成为一个与环境无关的交付物,可以被用在软件生命周期的任何阶段,彻底改变了传统的软件交付方式. 甚至可以说,是在容器技术之后 ...
- 使用docker-compose 一键部署你的分布式调用链跟踪框架skywalking
一旦你的程序docker化之后,你会遇到各种问题,比如原来采用的本地记日志的方式就不再方便了,虽然你可以挂载到宿主机,但你使用 --scale 的话,会导致 记录日志异常,所以最好的方式还是要做日志中 ...
- windows一键部署java项目
windows一键部署java项目 因为公司需求,要在windows的环境上做一键部署启动java项目,同时还要支持从安装界面动态修改配置文件的IP地址.就像安装软件一样将jdk,tomcat,mys ...
- Git+Gitlab+Ansible剧本实现一键部署动态网站(二)--技术流ken
项目前言 之前已经写了一篇关于git和ansible的博客<Git+Gitlab+Ansible剧本实现一键部署Nginx--技术流ken>.关于git,gitliab,ansible在我 ...
- Git+Gitlab+Ansible的roles实现一键部署Nginx静态网站(一)--技术流ken
前言 截止目前已经写了<Ansible基础认识及安装使用详解(一)--技术流ken>,<Ansible常用模块介绍及使用(二)--技术流ken><Ansible剧本介绍及 ...
- Docker Compose 一键部署Nginx代理Tomcat集群
Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...
- ansible一键部署k8s单机环境
一.虚拟机准备 干净的Centsot7.4.4G内存.2个CPU 最小化安装,最好带虚拟化 二.执行初始化脚本 注意:脚本中配置静态网卡根据实际网卡名称配置,我用的是ens33 可以用 sed -i ...
- Docker一键部署Hadoop心得(一)
最近一直在折腾使用docker一键部署全分布式hadoop集群,虽然一键部署的脚本写好了并且可以成功运行出各个节点,但在运行一个wordcount实例时出现了错误,错误如下: java.io.IOEx ...
- 一键部署 Docker Datacenter ---简化docker数据中心安装步骤
DDC 简介 2016年2月下旬,Docker发布了企业级容器管理和服务部署的整体解决方案平台-Docker Datacenter,简称DDC.DDC 有三个组件构成:1. Docker Univer ...
随机推荐
- 【Android Studio】为Android Studio设置HTTP代理
[Android Studio]为Android Studio设置HTTP代理 大陆的墙很厚很高,初次安装Android Studio下载SDK等必定失败,设置代理方法如下: 1. 到androi ...
- 多线程学习笔记六之并发工具类CountDownLatch和CyclicBarrier
目录 简介 CountDownLatch 示例 实现分析 CountDownLatch与Thread.join() CyclicBarrier 实现分析 CountDownLatch和CyclicBa ...
- jQuery漏掉的东西
prop和attr的区别 attr一般都用来设置和操作元素的自定义属性的,而prop一般都是操作元素的内置属性的(尤其是表单元素的操作我们大部分都在使用prop) each 可以遍历jQuery集合中 ...
- JSP(Servlet)中从连接池获取连接
1) 建立连接. 2) 执行SQL. 3) 处理结果. 4) 释放资源. Connection pool:连接池 DataSource: LDAP ( Light directory access p ...
- Android-Service和Thread
Android-Service和Thread 学习自 郭霖的博客 服务是运行在主线程上的 可能在我们第一次接触到Service的时候都是对于 __服务是运行在主线程上的 __这一现象不太理解,但是事实 ...
- BZOJ.2456.mode(绝对众数)
题目链接 \(Description\) 限制空间(只能保留两个变量),求给定n个数中出现次数超过\(\frac{n}{2}\)的数. \(Solution\) 维护两个变量,\(now\)和\(cn ...
- BZOJ3518 : 点组计数
若直线的斜率为0或者不存在斜率,则有$nC(m,3)+mC(n,3)$种方案.若直线的斜率不为0,只需考虑斜率为正的情况,最后答案再乘以2即可.枚举两个点的坐标差,设$t=\min(n,m)$,则有: ...
- Springboot 线程池配置
最近的项目里要手动维护线程池,然后看到一起开发的小伙伴直接用Java了,我坚信Springboot不可能没这功能,于是查了些资料,果然有,这里给一下. 首先我们都知道@Async标签能让方法异步执行, ...
- Windows 7重启后USB 3.0无法使用的问题解决
1.首先对主板USB3.0驱动程序进行重新安装 2.如果驱动程序重装后还是无法解决无法使用USB3.0设备的话,在win7桌面上找到“计算机”图标并鼠标右键,选择“管理”选项,找到设备管理器,然后找到 ...
- STM32的CRC32 实现代码 -- Ether
uint32_t reverse_32( uint32_t data ) { asm("rbit r0,r0"); return data; } ; uint32_t crc32_ ...