OpenShift是红帽的云开发平台即服务(PaaS)。自由和开放源码的云计算平台使开发人员能够创建、测试和运行他们的应用程序,并且可以把它们部署到云中。Openshift广泛支持多种编程语言和框架,如Java,Ruby和PHP等。另外它还提供了多种集成开发工具如Eclipse integration,JBoss Developer Studio和 Jenkins等。OpenShift 基于一个开源生态系统为移动应用,数据库服务等,提供支持。
OpenShift Online服务构建在Red Hat Enterprise Linux上。Red Hat Enterprise Linux提供集成应用程序,运行库和一个配置可伸缩的多用户单实例的操作系统,以满足企业级应用的各种需求。
 
以上的内容,百度百科里面都能看到。关键的,可以免费部署一个 JAVA 应用(还有其他语言,php,python 等),要知道在天朝java 、python的部署环境还是不便宜的。
 
据说 V2时代可以免费部署3个。WTF
 
 

扯淡完毕。  现在注册 openshift 基本都直接是 V3版本了。  我也比较推荐 V3 版本。毕竟将自己的项目部署到网络中是不区分新手,老手,高手的,也就是说不需要您命令行敲的棒棒棒棒棒。。。。的,也能部署应用到网络中。V3版本基本全视图化了,操作起来也比较方便。文档也很全面,官方 github 上也有很多各语言的 quickstart 项目。
 
 
开始了.
 
一、 创建项目
 
1. 注册账号(跳过)
 
 
2. 选择 1个免费的服务器环境
  服务器地址只能选择美国,东海岸,西海岸,XXX(还有个忘记了)随便选一个
 
3. 创建项目
  点击“open web console”
 
4. 选择 Langauge -> Java -> RED HAT JBOSS 
  • 您也可以选择其他语言
  • 您也可以选择其他容器
 
5. 配置容器
  1. 项目的名称,只能字母+数字
  2. 项目别名
  3. 项目说明
  4. 应用名称
  5. 应用的 git 仓库地址,推荐使用 github,这里也是以 github 为例。

获取 github 项目地址。方法如下:

  如果你是初次搭建,建议用这个哥么搭建的一个 oenshift java-web demo

  Github 地址:https://github.com/OpenShiftDemos/os-sample-java-web

  仓库地址 : https://github.com/OpenShiftDemos/os-sample-java-web.git

  把仓库地址,复制到 Git Repository 中。

6. 到第三部,可以直接关闭,也可以等待一下,当出现"successfully"表示项目创建成功。

关闭窗口,你会看到右侧已经有一个项目创建好了。


二、 部署项目&Github 代码自动更新
 
默认情况下,项目创建后基本就已经部署成功了。
点击 web console 里的项目,我们就可以进入项目的管理界面了。
 
1. 界面菜单说明
 
  Overview 项目的基本概况
  Applications 应用程序选项,主要是对整个应用程序的管理。包含 Deployments(部署)、Pods(容器,应该是这个意思)、Services(服务)、Router(路由)
  Builds 编译或者构建,主要是针对您源代码的管理。包含 Builds(编译或者构建)、Images(镜像管理)
  
  其他的菜单就是监控,存储,安全,用户等了。自己摸索或参考文档即可。
  
2. openshift 是如何工作的
 
 
  主要分为以下2个部分

  2.1 更直白点说

    1. 从 github 上下载代码(首次,有更新)

    2. 会创建一个新的 build 。(bulids 菜单里面可以看到列表)

    3. build 后,会替换掉现有的 image 内容。

    4. 将image 进行 deployment(部署)

    5. 将 deployment 的内容放在 pod(容器)中,提供 service 服务。

  2.2 级阶段,我们只需要关心

    1. github 代码自动同步

    2. build 是否成功

    3. deployment 是否成功

    4. pod 启动是否成功

    以上内容在对应的菜单都有列表可以查看。

3. 需要注意的地方

  3.1 build 只能有一个执行

    当您新建 bulid 是,要观察列表中是否有 状态为 “pending”、“runing” 的,如果有,请先关闭它,再执行新的 build

  3.2 bulid 分支版本

    build 支持分支版本,或者某一次的提交作为初始版本,如果不选择,默认为 master

    选择菜单 builds->builds ,选择列表中的项目名。  进入项目的历史 build 页面。 点击“Actions”,选择 edit

    选择 显示高级选项

    

    Git Reference 提示也说了,可以指定 branch、tag、commit 作为此次编译的参考

    Context Dir ,这个目录就是你需要发布的内容目录了,默认情况下就是/根目录,但是如果你的 GitHub 像

    官方提供的java-quickstart 这样,是包含了多个 Project 的。那么你就要选择一个目录作为你这个应用程序的 Project

    

    举例来说:我要发布java-quickstart 中的 tomcat-websocket-chat 。并且为 branch 1.2 这个版本的。

    Git Repository URL : https://github.com/liuqi0725/openshift-quickstarts

    Git Reference : 1.2

    Context Dir : tomcat-websocket-chat    

    

   3.3 头疼医头,脚痛医脚。

    发布过程,可能会出现 build 失败,deployment失败, pods 失败。

    build 成功的标志“complate”状态, depoyment 成功标志“Active”状态,pod 成功标志“Running”状态,并且Containers Ready 为 “1/1”

    以上3个内容,均在对应的菜单查看。

    那个环节失败了,点击进入进行重新的 build、deply

4. 使用 webhook 自动关联 github 代码变更

  4.1 选择菜单 builds -> builds ,点击 porject name 进入 project 的build 历史。 选择顶部 tab 的 Configuration. 复制 webhook url

    

  4.2 打开 github 您的项目,选择 setting ,选择 webhook

   

    成功后,应该是一个绿色的正确标志。

    

 

 

OPENSHIFT V3 免费部署 Java-Web的更多相关文章

  1. 阿里云部署Java web项目初体验(转)

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在 ...

  2. 阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat

    摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在阿里云上部署Java web项目. 一.准备工作 购买了阿里云的云解析,和云服务器ecs. 2.下载put ...

  3. 【转】Tomcat中部署java web应用程序

    http://www.blogjava.net/jiafang83/archive/2009/06/02/279644.html 转载:今天给大家介绍怎样在Tomcat5.5.9中部署Java Web ...

  4. 在Tomcat中部署Java Web应用程序

    在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署.在下文中$CATALINA_HOME指的是Tomcat根目录. 一.静态部署      静态部署指的是我们在服务器启动之前部 ...

  5. 在linux下用tomcat部署java web项目的过程与注意事项

    在linux下用tomcat部署java web项目的过程与注意事项 一.安装JDK 到http://www.oracle.com/technetwork/java/javase/downloads/ ...

  6. 部署Java Web项目报错(一)

    今天,我在部署Java Web项目时,出现错误,并且在eclipse新建一个servers,却出现多个项目. 具体错误截图如下: 然后,我又将项目部署到JBoss服务器中,却还是运行不成功 22:12 ...

  7. dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器

    # dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...

  8. 阿里云服务器部署Java Web项目全过程

    最近需要将一个Java Web项目部署到服务器上,方便多人共享访问.这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功,写下一篇文章记录以便日后回顾. 购买服务器 第一步当然是需要购 ...

  9. CentOS6.5中部署java web环境

    原来在linux中部署java web环境,没有做好总结,这次在部署的过程中,将部署的过程做了记录,希望对大家有帮助.主要内容包括CentOS安装以后的网络设置,系统自带jdk的卸载,新版本jdk的安 ...

随机推荐

  1. [转载] Netty源码分析

    转载自http://blog.csdn.net/kobejayandy/article/details/11836813 Netty提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高 ...

  2. 有序GUID

    背景 常见的一种数据库设计是使用连续的整数为做主键,当新的数据插入到数据库时,由数据库自动生成.但这种设计不一定适合所有场景. 随着越来越多的使用Nhibernate.EntityFramework等 ...

  3. select * from 的一些心得

    如何简单运用好 select * from语句,在不同的函数下,有不同的先后顺序. 语法格式 (代表先后顺便) (2)select 字段名 查询什么东西 (1)from 表名,从哪个表查询 例如:查询 ...

  4. 9. 使用ZooKeeper Java API编程

    ZooKeeper是用Java开发的,3.4.6版本的Java API文档可以在http://zookeeper.apache.org/doc/r3.4.6/api/index.html上找到. Ti ...

  5. WebWorker实战使用

    总体来说webworker解决了阻塞主线程问题,但是还没解决高性能计算的问题 WebWorker整体介绍 https://developer.mozilla.org/zh-CN/docs/Web/AP ...

  6. 如何有效的去使用一款免费的ERP

    现在市场上免费的软件不少,怎么样去使用一款免费产品是很多人比较头疼的事情. 一般使用免费ERP软件的基本都是小企业,没用过想用又舍不得花钱.如果企业有懂数据库这块儿的管理员,那都还好.如果没有,那建议 ...

  7. 开源纯C#工控网关+组态软件(六)图元组件

    一.   图元概述 图元是构成人机界面的基本单元.如一个个的电机.设备.数据显示.仪表盘,都是图元.构建人机界面的过程就是铺排.挪移.定位图元的过程. 图元设计是绘图和编码的结合.因为图元不仅有显示和 ...

  8. 解决WebSocket兼容ie浏览器版本问题

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7942323.html 在使用Netty进行WebSocket开发时,测试发现:ie 11系列个别低版本连接W ...

  9. 实践作业1:测试管理工具实践 Day1

    1.熟悉课程平台2.选取小组作业工具并分工3.申请博客4.提交<高级软件测试技术SPOC2017年秋学生博客地址汇总>问卷5.着手熟悉Testlink

  10. Nginx负载均衡的优缺点

    Nginx的优点是: 1.工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名.目录结构,它的正则规则比HAProxy更为强大和灵活,这也是它目前广泛流行的主要原因之一,Nginx ...