OpenShift 是目前对我来说最有趣的 PaaS 产品。不仅因为它是 Red Hat 产品系列的一部分,还因为它拥有我对现代 PaaS 的所有期望。它支持基于图像的部署(使用 Docker 图像),抽象操作复杂性(例如网络、存储和健康检查),并通过集成的工具堆栈极大地支持 DevOps。
目前的一个小缺点是最新的 v3 不能作为免费在线服务使用。如果您想试用它,您可以自己在 AWS 上设置它或在本地运行它。像往常一样,大部分可用的文档仅涵盖基于 Linux 的系统。因此,我将引导您完成在本地计算机上启动 OpenShift v3 Origin 的第一步。
先决条件
安装最新版本的 Vagrant 和 VirtualBox 。您将需要两者,它们将使您的生活更轻松。另外,请安装适用于 Windows 的 OpenShift 客户端。从 GitHub 上的原始项目 下载适用于您的操作系统的那个。 Windows 版本有 16 MB。接下来是将其解压缩到您选择的文件夹中。确保将此文件夹添加到您的 PATH 环境变量中。
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
方法一:Fabric 8 Vagrant All In One
Fabric 8 团队有一个完整的 基于 Vagrant 的一体机, 随时可以运行。它还包含 Fabric8,但您也可以获得完全可操作的 OpenShift Origin。您所要做的就是克隆 Fabric8 安装程序 git 存储库 :
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
您需要安装一个额外的 Vagrant 插件:
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
遗憾的是,对于 Windows,无法自动路由新服务。您必须手动将新路由添加到 %WINDIR%\System32\drivers\etc\hosts。为方便起见,已预先添加一组默认 Fabric8 应用程序的路由。如果您公开新路由,则必须手动将它们添加到您的主机文件中。现在你已经准备好开始 Vagrant 了:
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
如果您是第一次这样做,则会拉取一堆 Docker 镜像。所以准备喝点咖啡+++休息一下。完成后,将浏览器指向 http://vagrant.f8:8443 并使用任何用户/密码组合访问 OpenShift 控制台。
使用
oc
命令行工具登录并查看是否也有效:
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
方法二:使用预建的 Vagrant Box
使用 v3developer 培训中预构建的 Vagrant box 可能是启动和运行所有内容的最便捷方式。以下是完整的 v3 Hands-On-Lab 的一部分,希望很快会有一个更完善的版本。
转到: bit.ly/v3devs 并转到 BinariesAndVagrantFile 文件夹。下载 openshift-bootstrap-1.0.6.box(注意:4.5 GB!)和 Vagrant 文件。
使用文件管理器将 .box 文件重命名为 openshift.box 并使用记事本编辑 Vagrant 文件并将所有引用从 openshift3bootstrap 更改为 openshift,然后保存更改。现在您需要添加框:
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
您已准备好调出 Vagrant 框:
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
完成后,将浏览器指向 http://localhost:8443 并使用任何用户/密码组合访问 OpenShift 控制台。
使用
oc
命令行工具登录并查看是否也有效:
set PATH=%PATH%;"D:\Program Files (x86)\openshift-origin-v1.0.3"
方法三和方法四:从源代码和 Docker 容器构建
OpenShift 文档提到了另外两种让 OpenShift Origin 在本地运行的方法。作为 Docker 容器 或通过 在 Vagrant box 中本地构建 。我无法让它们中的任何一个在我的 Windows 7 上运行。
包起来
这只是为即将发布的博客文章打下基础的一个小练习。很快我将向您展示更多有关如何使用 OpenShift 的源到映像技术构建 Java EE 项目以及如何运行和扩展 Docker 容器的信息。