本文參考Cloud Foundry官方文檔,及論壇整理。 php
第一步:安裝 Cloud Foundry Integration Extension for Eclipse html
在 Eclipse 中,按照下列步驟安裝 Cloud Foundry Integration Extension。 java
選擇 Help > Eclipse Marketplace。 node
將打開一個顯示插件和附加組件的面板。 mysql
在 Find 字段中,輸入「cloud foundry」,而後單擊 Go。 git
在搜索結果中,選擇「Cloud Foundry Integration for Eclipse」,而後單擊Install。 github
Eclipse 會檢查資源和依賴項。 sql
單擊 Next 開始安裝。 數據庫
安裝嚮導將引導您完成許可接受和安裝步驟。 編程
安裝完成時,從新啓動 Eclipse。
您如今即可以鏈接到 Cloud Foundry 雲。
第二步:使用 Cloud Foundry Integration for Eclipse 部署應用程序和綁定服務
在 STS 或 Eclipse 中,您須要定義一個新服務器來表示 Cloud Foundry 目標, 而後將應用程序部署到其中。
按照下面的步驟定義新服務器。
選擇 Window > Show View > Servers。
單擊新服務器嚮導或右鍵單擊 Servers 視圖中的空白區域,而後選擇 New > Server。
將會啓動 Define a New Server 嚮導。
展開 VMware 文件夾,選擇 Cloud Foundry。
指定要在服務器名稱中建立的 Cloud Foundry 服務器實例的顯示名稱。服務器主機名應 保持 localhost 不變。單擊 Next。
選擇要從 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 視圖中。
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 服務器。若是是的話,它會打開一個應用程序詳細信息嚮導,用戶能夠在其中 配置應用程序和綁定可選的服務。支持的應用程序類型包括 Spring、Grails、Lift 和 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 視圖中,雙擊應用程序名稱。
Applications 選項卡顯示有關 Cloud Foundry 目標上應用程序的詳細信息。
在 Services 部分中,單擊 Add service 圖標。
爲新服務提供名稱,並選擇服務類型。
Type 列表包含 目標 Cloud Foundry 上全部可用的服務類型。
單擊 Finish。
插件將從 Cloud Foundry 請求服務,新服務 會出如今 Services 部分中。
當您將服務綁定到應用程序時,Cloud Foundry Integration Extension 會更新應用程序配置文件,以訪問所定義的 服務。綁定服務時不得運行應用程序。
若是應用程序正在運行,請中止應用程序:
在 Applications 面板中,選擇要爲其綁定 服務的應用程序。
在 Services 面板中選擇要綁定的服務,而後將其拖動到 Application Services 面板中。
單擊 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 變量中得到鏈接信息,該變量已在應用程序的 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 所需的全部數據。
請在 Cloud Foundry 入門站點的服務 部分中查看特定語言和框架下使用 MySQL 的示例。
第四步:鏈接數據庫。
鏈接數據庫有兩種方法
1.打開VMare Cloud Foundry服務器的配置界面,在Services列表中選擇一個服務(若是沒有點擊Add Service)右擊選 擇Open Tunnel.
2 以後彈出數據庫鏈接信息,將鏈接信息複製到記事本。
3 在eclipse中打開Data Source Explorer 視圖(Window-->Show-->Data Source Explorer)
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-p290和DevKit-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操做界面(因爲網速不給力,查詢表內容,沒反應了)