Java Cloud Foundry win7 win8 环境安装。

我只是一个虾纸丫 提交于 2020-02-29 22:04:37

本文参考Cloud Foundry官方文档,及论坛整理。

第一步:安装 Cloud Foundry Integration Extension for Eclipse 


在 Eclipse 中安装 Cloud Foundry Integration Extension

在 Eclipse 中,按照下列步骤安装 Cloud Foundry Integration Extension。

  • 选择 Help > Eclipse Marketplace

    将打开一个显示插件和附加组件的面板。

  • 在 Find 字段中,输入“cloud foundry”,然后单击 Go

    Eclipse 扩展安装

  • 在搜索结果中,选择“Cloud Foundry Integration for Eclipse”,然后单击Install

    Eclipse 会检查资源和依赖项。

  • 单击 Next 开始安装。

    安装向导将引导您完成许可接受和安装步骤。

  • 安装完成时,重新启动 Eclipse。

    您现在便可以连接到 Cloud Foundry 云。


第二步:使用 Cloud Foundry Integration for Eclipse 部署应用程序和绑定服务


为 Cloud Foundry 目标定义一个新服务器

在 STS 或 Eclipse 中,您需要定义一个新服务器来表示 Cloud Foundry 目标, 然后将应用程序部署到其中。

按照下面的步骤定义新服务器。

  • 选择 Window > Show View > Servers

  • 单击新服务器向导或右键单击 Servers 视图中的空白区域,然后选择 New > Server

    STS 新建服务器

    将会启动 Define a New Server 向导。

  • 展开 VMware 文件夹,选择 Cloud Foundry。

    STS 新建服务器向导

  • 指定要在服务器名称中创建的 Cloud Foundry 服务器实例的显示名称。服务器主机名应 保持 localhost 不变。单击 Next

    STS 新建服务器向导帐户

  • 选择要从 URL 列表中设置的 Cloud Foundry 目标。

    • VMware Cloud Foundry。VMware 托管的开放平台即服务。

    • 本地云。VMware Cloud Application Platform (VCAP) 的本地安装。

    • Microcloud。Micro Cloud Foundry 虚拟机。

  • 如果已选择 Microcloud,请输入 在 http://cloudfoundry.com/micro 中为 Micro Cloud Foundry 注册的域名以及描述性名称。

    创建微云目标

  • 单击 OK

  • 输入 Cloud Foundry 目标的电子邮件地址和密码。

    • 对于 VMware Cloud Foundry 目标,电子邮件必须 预先在网站上进行注册。CloudFoundry.com 注册按钮允许用户预先注册电子邮件帐户。

    • 对于本地云或 Microcloud 目标,请使用 已注册的电子邮件地址,或输入要注册的新电子邮件和密码,然后单击 Register Account…

    单击 Validate Account 以测试帐户在 目标 Cloud Foundry 上是否有效。

  • 单击 Finish

    新的 Cloud Foundry 目标会显示在 Servers 视图中。

将应用程序从 STS 或 Eclipse 部署到 Cloud Foundry

Cloud Foundry Integration Extension 使用 Eclipse Web Tools Project (WTP) 服务器基础架构,该架构用于将 Java Web 应用程序部署到远程 服务器。

部署应用程序包括三个步骤。

仅当应用程序使用 Cloud Foundry 服务(如 MySQL 或 vFabric Postgres 数据库或 RabbitMQ 消息传递)时才需要执行后两个步骤。

定义应用程序详细信息

  • 在 STS 或 Eclipse 中,选择 Windows > Show View > Servers 以显示 Servers 视图。

    显示服务器

    当前部署的应用程序(如果存在)将在服务器下方列出。

  • 要部署应用程序,请将其拖动到 Servers 视图中的目标 Cloud Foundry 服务器中。

    拖拽应用程序

    或者,您也可以双击该服务器,将会打开 Cloud Foundry 编辑器,允许用户 将应用程序拖放到 Applications 选项卡中。

    Cloud Foundry Integration Extension 会检查应用程序以确定应用程序类型并验证 是否已将应用程序部署到选定的 Cloud Foundry 服务器。如果是的话,它会打开一个应用程序详细信息向导,用户可以在其中 配置应用程序和绑定可选的服务。支持的应用程序类型包括 SpringGrailsLift 和 Java Web

    应用程序详细信息

  • 如果 Integration Extension 未正确识别应用程序的框架,则根据需要更改应用程序的名称, ,选择正确的应用程序类型,然后 单击 Next

    注意: 此处的应用程序名称仅用于识别 要管理的应用程序。应用程序 URL 中向用户显示的 名称在该向导的下一个页面中设置。

    启动部署

  • 编辑已部署的 URL,并根据需要更改预留内存。

    在目标 Cloud Foundry 中,已部署的 URL 必须是唯一的。

  • 如果需要将服务绑定到应用程序,请单击 Next 以在部署之前先将它们绑定,或取消选择Start application on deployment 并在部署后通过 Cloud Foundry 服务器编辑器绑定服务。

  • 单击 Finish,虽然是可选项,但是用户也可以选择 Next 在部署前先绑定服务。

    应用程序部署完毕。如果选择 Start application on deployment,将会启动该选项,并可通过映射的 URL 访问。如果使用调试支持部署到 microcloud 或本地云,将会显示在 调试模式下启动应用程序的另一个选项。

    启动部署调试

  • 如果单击 Next,则可以将现有服务绑定到应用程序,或者可以定义其他服务,然后进行绑定。

    在部署上绑定服务

  • 部署后,在 Servers 视图中,双击该应用程序打开编辑器并显示应用程序统计信息以及 启动、停止、重新启动、更新并重新启动应用程序的控件,还可以更改应用程序的配置和绑定服务。

    应用程序控制面板

定义应用服务

必须先定义服务,然后才能将服务绑定到已部署的应用程序。Cloud Foundry Integration Extension 可从 目标 Cloud Foundry 中获取一个可用服务目录。定义服务后,可以将其绑定到 应用程序。部署期间,可以通过应用程序详细信息向导 将服务绑定到应用程序,如果应用程序已停止运行,也可以在部署后通过 Cloud Foundry 服务器编辑器进行绑定。

按照下面的步骤在编辑器中定义服务。

  • 在 Servers 视图中,双击应用程序名称。

    STS 应用程序选项卡

    Applications 选项卡显示有关 Cloud Foundry 目标上应用程序的详细信息。

  • 在 Services 部分中,单击 Add service 图标。

    STS 添加服务

  • 为新服务提供名称,并选择服务类型。

    STS 服务配置

    Type 列表包含 目标 Cloud Foundry 上所有可用的服务类型。

  • 单击 Finish

    插件将从 Cloud Foundry 请求服务,新服务 会出现在 Services 部分中。

绑定应用服务

当您将服务绑定到应用程序时,Cloud Foundry Integration Extension 会更新应用程序配置文件,以访问所定义的 服务。绑定服务时不得运行应用程序。

  • 如果应用程序正在运行,请停止应用程序:

    • 在 Servers 视图中,右键单击应用程序名称,然后选择 Stop,或者
    • 在 Cloud Foundry 服务器编辑器的 Applications 面板中,选择应用程序,然后单击 Stop 按钮。
  • 在 Applications 面板中,选择要为其绑定 服务的应用程序。

  • 在 Services 面板中选择要绑定的服务,然后将其拖动到 Application Services 面板中。

    STS 绑定服务

  • 单击 Start 按钮。

更新和重新启动应用程序

Cloud Foundry 编辑器中的 Applications 选项卡允许用户修改应用程序详细信息,如内存、运行的实例数、映射的应用程序 URL,以及启动、停止、重新启动、更新和重新启动应用程序。

常规更新与重启

用户可以重新启动应用程序,而不需要通过 Restart 按钮或 Servers 视图中的上下文菜单操作发布应用程序中的更改,或更新已部署应用程序中的更改并使用 Update and Restart 选项重新启动应用程序。

Update and Restart 会以增量方式逐步发布应用程序中的本地更改,并进行优化,以仅推送 自上次发布以来已经更改的资源。

停止和启动一个应用程序表明已执行一次完整的发布。


如果不需要数据库服务,现在你就可以利用eclipse的Cloud Foundry插件完成部署。

第三步:关于 Cloud Foundry MySQL 服务的介绍


MySQL 是常用的开源关系数据库,它被作为一项服务在 Cloud Foundry 上被提供。当部署 Rails、Grails 或 Spring 应用程序至 Cloud Foundry 时,vmc 或 STS 可能自动配置您的应用程序以使用 Cloud Foundry 实例。如果您的应用程序不能被自动配置,您可从 VCAP_SERVICES 环境变量中获得您的应用程序连接数据库所需的信息。

VCAP_SERVICES 环境变量

如果您的应用程序不能被自动配置,您必须提供相应的代码以从 VCAP_SERVICES 变量中获得连接信息,该变量已在应用程序的 Cloud Foundry 环境中被设置。此变量的内容是一个 JSON 文件,其中包含一个与应用程序捆绑的所有配置服务的列表。

以下为一个作为示例 JSON 文件(出于可读性考虑而重设了格式),该文件来自带有两个已配置 MySQL 服务的 Cloud Foundry 应用程序的环境。

{"mysql-5.1":[ { "name":"mysql-4f700", "label":"mysql-5.1", "plan":"free", "tags":["mysql","mysql-5.1","relational"], "credentials":{ "name":"d6d665aa69817406d8901cd145e05e3c6", "hostname":"mysql-node01.us-east-1.aws.af.cm", "host":"mysql-node01.us-east-1.aws.af.cm", "port":3306, "user":"uB7CoL4Hxv9Ny", "username":"uB7CoL4Hxv9Ny", "password":"pzAx0iaOp2yKB" } }, { "name":"mysql-f1a13", "label":"mysql-5.1", "plan":"free", "tags":["mysql","mysql-5.1","relational"], "credentials":{ "name":"db777ab9da32047d99dd6cdae3aafebda", "hostname":"mysql-node01.us-east-1.aws.af.cm", "host":"mysql-node01.us-east-1.aws.af.cm", "port":3306, "user":"uJHApvZF6JBqT", "username":"uJHApvZF6JBqT", "password":"p146KmfkqGYmi" } } ]}

使用访问操作系统环境变量的编程语言工具检索 VCAP_SERVICES 的值。例如,在 Java 中为 java.lang.System.getenv("VCAP_SERVICES"),在 Ruby 中为 ENV['VCAP_SERVICES']。在 Node.js (JavaScript) 中使用 process.env.VCAP_SERVICES,在 Python 中使用 os.getenv("VCAP_SERVICES")。

使用特定语言的 JSON 库或模型解析该值和访问您所需的信息。

name 键值可被用于区别多个 MySQL 实例;它在您使用 vmc 或 STS 创建实例时被设置。

credentials 对象包含通过一个驱动程序或库连接 MySQL 所需的所有数据。

  • hostname 和 host 具有相同的值,都为运行 MySQL 服务器的主机
  • port 是 MySQL 服务器在主机上接受连接的端口
  • user 和 username 是 MySQL 数据库用户的名称
  • password 是用户的 MySQL 密码
  • name是 MySQL 数据库的名称

请在 Cloud Foundry 入门站点的服务 部分中查看特定语言和框架下使用 MySQL 的示例。


第四步:连接数据库。

      连接数据库有两种方法

     一是根据官网的说明(http://blog.cloudfoundry.com/2012/07/31/cloud-foundry-integration-for-eclipse-now-supports-tunneling-to-services/).

       1.打开VMare Cloud Foundry服务器的配置界面,在Services列表中选择一个服务(如果没有点击Add Service)右击选    择Open Tunnel.

      

       2 之后弹出数据库连接信息,将连接信息复制到记事本。

       

     

    3 在eclipse中打开Data Source Explorer 视图(Window-->Show-->Data Source Explorer)

   cf_eclipse_create_newdatabase_connection.png (390×208)

  4 新建一个mysql数据库连接

   

                                              6 第一次使用的时候新建一个连接没有连接信息 需要点击New Driver Definition 

     选择数据库版本

      
    7.校正数据库驱动地址

   

   8.填写刚才复制的数据库连接信息

   

  9. 点击OK 返回连接界面 Finsh 连接完成。

   

   

 10.可以在这里进行数据库操作

  


第二种

   连接方式有点麻烦是根据(http://cnblog.cloudfoundry.com/2012/07/07/200/) 完成的

    在操作之前 需要

    在http://rubyinstaller.org/downloads 下载Ruby 1.9.2-p290DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe.

     在Oracle官网http://www.mysql.com/products/community/下载Mysql数据库。

1 安装Ruby 1.9.2(安装ruby 过程 选择添加到win7环境变量path中,最好目录是英文,别带空格.)

2 安装Devkit  (http://rubyer.me/blog/134/)

DevKit 是windows平台下编译和使用本地C/C++扩展包的工具。它就是用来模拟Linux平台下的make, gcc, sh来进行编译。注:这个方法目前仅支持通过RubyInstaller安装的Ruby,如果不是建议你重新安装。安装方法:双击下载的7z文件,指定解压路径,路径中不能有空格。如C:\DevKit,这个路径就是<DEVKIT_INSTALL_DIR>。

1 > cd <DEVKIT_INSTALL_DIR>
2 > ruby dk.rb init
3 #生成config.yml,这里会检查将要添加DevKit支持的Ruby列表,只支持通过RubyInstaller安装的Ruby
4 #如果这里列出的Ruby与你的要求不符,可以手动修改
5 > ruby dk.rb review  #检查要添加DevKit支持的Ruby列表是否有误,可以略过
6 > ruby dk.rb install
7 [INFO] Updating convenience notice gem override for 'C:/Ruby192'
8 [INFO] Installing 'C:/Ruby192/lib/ruby/site_ruby/devkit.rb'

检查是否安装成功

1 > gem install rdiscount --platform=ruby
2 Fetching: rdiscount-1.6.8.gem (100%)
3 Temporarily enhancing PATH to include DevKit...
4 Building native extensions.  This could take a while...
5 Successfully installed rdiscount-1.6.8
6 1 gem installed
7 Installing ri documentation for rdiscount-1.6.8...
8 Installing RDoc documentation for rdiscount-1.6.8...

如果能安装rdiscount成功说明安装DevKit成功。

   3 安装MySql 数据库.(在Win7 环境变量Path中添加MySlq bin 地址 如D:\Program Files\MySQL\MySQL Server 5.5\bin)

   4  安装vmc gem (http://cndocs.cloudfoundry.com/tools/vmc/installing-vmc.html)

      在Window 上打开Ruby的命令提示符窗口执行 gem install vmc  成功之后测试下vmc指令是否可用

    
 

   5 安装 caldecott gem  在命令提示符窗口执行 gem install caldecott

  

 6 安装 tunnel-vmc-plugin gem  在命令提示符窗口执行 gem install tunnel-vmc-plugin

   

   7 操作Cloud Foundry 数据库

     列出你所有的数据库服务 vmc services    

     vmc  services 没有数据库 那是因为你没有建立数据库服务,我觉得最简单的方式就是在eclipse插件中建立数据库服务 参考cloud foundry的文档 ,也可以根据vmc的指令创建数据库服务http://cndocs.cloudfoundry.com/tools/vmc/vmc-quick-ref.html(你创建的是数据库服务名,不是你的数据库名)。

    连接数据库服务 vmc tunnel <dzhai 数据库服务名>

    选择哪种连接方式 选择2 

    成功进入mysql操作界面(由于网速不给力,查询表内容,没反应了)

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!