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. Gulp livereload

    平时使用yeoman作为前端部署工具,感觉到yeoman构建工具虽然方便,但是速度和大小总是不尽人意. 最近看到了gulp http://gulpjs.com/ 比较感兴趣随动手一试 gulp的安装以 ...

  2. Unity3D_GUI (1)--按钮控件

    这是自己的第一篇记录自己的技术文章,自己还是个菜鸟,有错误之处还望大家能够多多指点. 下面记录的是自己在学GUI.Button的自己认知,这里用的是代码进行控制,当然当你学熟练了就可以直接使用GUI ...

  3. Numpy入门 - 数组排序

    本节主要讲解numpy数组的排序方法sort的应用,包括按升序排列和按降序排列. 一.按升序排列 import numpy as np arr = np.array([[3, 1, 2], [6, 4 ...

  4. 【前端开发】--js弹框

    js三种弹框 一.普通弹框 这类弹框就是仅仅是个提示作用,并不会做其它操作 关键词:alert()    这个没啥好说的,就是一个弹框.  二.判断弹框     这类框有一个判断作用 关键字:conf ...

  5. 【java提高】---HashMap解析(一)

    HashMap解析(一) 平时一直再用hashmap并没有稍微深入的去了解它,自己花点时间想往里面在深入一点,发现它比arraylist难理解很多,好多东西目前还不太能理解等以后自己知识更加丰富在过来 ...

  6. 前端测试框架Jest系列教程 -- Matchers(匹配器)

    写在前面: 匹配器(Matchers)是Jest中非常重要的一个概念,它可以提供很多种方式来让你去验证你所测试的返回值,本文重点介绍几种常用的Matcher,其他的可以通过官网api文档查看. 常用的 ...

  7. svn搭建文档

    1.制作本地yum源 a)挂载光盘 [root@localhost ~]# mount  /dev/cdrom  /mnt b)删除/etc/yum.repos.d目录所有的repo文件 [root@ ...

  8. Linux压力测试软件Stress安装及使用指南

      一.Stress是什么 stress是一个linux下的压力测试工具,专门为那些想要测试自己的系统,完全高负荷和监督这些设备运行的用户. 二.安装 将stress的安装包上传并解压到linux服务 ...

  9. 关于Switch case条件语句中无break的用法

    关于Switch case条件语句的另类用法       今天在拜读一位前辈的程序时,遇到了这样一段程序: /***************************/ switch(operation ...

  10. Jarvis OJ - [XMAN]level1 - Writeup——简单shellcode利用

    100分的pwn 简单查看一下,果然还是比较简单的 放到ida中查看一下,有明显的溢出函数,并且在函数中打印出了字符串的地址,并且字符串比较长,没有NX保护 所以我们很容易想到构造shellcode, ...