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. pt-stalk

    1.名词解释 Collect forensic data about MySQL when problems occur 在问题发生的时候采集现场数据 pt-stalk waits for a tri ...

  2. Spring JDBC 示例

    在使用普通的 JDBC 数据库时,就会很麻烦的写不必要的代码来处理异常,打开和关闭数据库连接等.但 Spring JDBC 框架负责所有的低层细节,从开始打开连接,准备和执行 SQL 语句,处理异常, ...

  3. 创建简单的Python列表

    比如给出电影列表: The Holy Grail The Life of Brian The Meaning of Life 转换为Python可读的列表,需要遵循以下4个步骤: 1.在数据两边加引号 ...

  4. 华南师大 2017 年 ACM 程序设计竞赛新生初赛题解

    题解 被你们虐了千百遍的题目和 OJ 也很累的,也想要休息,所以你们别想了,行行好放过它们,我们来看题解吧... A. 诡异的计数法 Description cgy 太喜欢质数了以至于他计数也需要用质 ...

  5. Spring学习笔记(二)之装配Bean

    一,介绍Bean的装配机制 在Spring中,容器负责对象的创建并通过DI来协调对象之间的关系.但是我们要告诉Spring创建哪些Bean并且如何将其装配在一起.,装配wiring就是DI依赖注入的本 ...

  6. mysql数据库的安装与基本配置

    目录 绿色版下载 mysql绿色版(5.7版本的安装与配置) 绿色版下载: mysql官网下载地址:https://www.oracle.com/index.html mysql绿色版(5.7版本的安 ...

  7. Python函数篇(2)-递归函数、匿名函数及高阶函数

    1.全局变量和局部变量 一般定义在程序的最开始的变量称为函数变量,在子程序中定义的变量称为局部变量,可以简单的理解为,无缩进的为全局变量,有缩进的是局部变量,全局变量的作用域是整个程序,而局部变量的作 ...

  8. CCF-201312-3-最大的矩形

    问题描述 试题编号: 201312-3 试题名称: 最大的矩形 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在横轴上放了n个相邻的矩形,每个矩形的宽度是1,而第i(1 ≤ ...

  9. ibv_get_device_name()函数

    const char *ibv_get_device_name(struct ibv_device *device); 描述 函数用来获取一个与RDMA设备相关联的名字 注意 这个名字在一台特定的机器 ...

  10. Vue 事件

    一.事件冒泡 方法一.使用event.cancelBubble = true来阻止冒泡 <div @click="show2()"> <input type=&q ...