Docker, Java EE 7, 和 Maven with WebLogic 12.1.3

jopen 10年前發布 | 45K 次閱讀 Docker 應用服務器 WebLogic

WebLogic 12.1.3已經發布,并且對于JavaEE7的APIs在數據庫支持web應用開發上也是最重要的支持。以下是在發行版本中支持的一些標準:

如上面你所見到的,WebLogic 以相同的實現方式捆綁使用在GlassFish 4.0上,如果你已經開始開發Java EE 7應用(Well,當然是僅限上述的APIs),并且正在尋找一個商用支持的環境,那么WebLogic 可以提供給你一個合適的應用服務。

同樣Apache Maven Plugin 有許多的改進,這使得開發者的生活更簡便,允許更好的自動化測試(Arquillian(一種單元測試框架)!),持續的集成和分發。那些支持基于Maven的工程的IDE同樣從中受益。

這是不是使得WebLogic成為運行現代的滿足RESTful原則的HTML5/Javascript網頁應用程序和WebSockets服務的 最好的Java EE應用服務器?如果我告訴你是不公平的,對嗎?因此,為了讓你有一個更好的方式去測試WebLogic,我創建了一個Dockerfile。這個Dockerfile可以使你在你自己的開發環境中創建一個WebLogic域并且去如你所想的那樣去測試它。去WebLogic Community GitHub repositoryweblogic-docker上下載Developer ZIP Distro Dockerfile

開始使用WebLogic 12.1.3,Java EE 7,Maven和Docker

現在讓我們開始。首先開發人員登陸Oracle.com并下載 WebLogic 12.1.3 ZIP Distro for Developers。保存該文件,供以后使用。

安裝WebLogic 12.1.3 沒有Docker那么(容易)

WebLogic ZIP 非常容易就可以安裝:

  1. 解壓的內容在一個文件夾里,你要保存zip包里的wls12130文件夾,在我的linux機器上我把他放在了 /home/bruno/Work/tools/.

  2. 進去wls12130文件夾并運行configure.cmd(windows)或者configure.sh(unix)

    • 創建domain的過程可能要花很長時間,此時安裝過程是凍結的,如果是linux系統請確保你的配置:
      $ export CONFIG_JVM_ARGS=-Djava.security.egd=file:/dev/./urandom

  3. 當安裝程序問你如果你想創建一個domain,type[Y]

  4. 安裝程序會問你的用戶名/密碼。在開發環境中,我通常使用weblogic/welcome1

  5. 安裝程序將WebLogic馬上開始,你可以檢查它運行在http://localhost:7001/控制臺

使用Docker安裝WebLogic 12.1.3(容易)

如果你的開發環境是基于Linux的,而且你現在并不熟悉Docker,那么先看What is Docker,然后試一試。長話短說:Docker是一個Linux容器;它就像個虛擬機,但又不是(例如有人在Vagrant虛擬機上運行Docker)。對我們來說最重要的是它會用虛擬的IP地址創建一個虛擬的網絡接口。

我筆記本的系統是Ubuntu 14.04,所以我用Docker Installation Instruction來安裝。假設你已經使用某種方式已經在你的機器上安裝了Docker,閱讀instructions for your own operational system.

  1. 下載Zip文件或者從weblogic-docker的Git倉庫上檢出,然后提取文件到你電腦的某個地方。我會使用$DOCKER_HOME作為文件存放位置的引用。

  2. 復制你先前下載的wls12130_dev.zip$DOCKER_HOME/weblogic-docker/weblogic12c-zip/

  3. 使用build.sh(以sudo身份)命令,等待Docker釋放它的魔法

  4. 使用dockWebLogic.sh命令,觀察WebLogic在Docker容器的啟動和運行

    • 它會和你主機的7001端口綁定

  5. 打開http://localhost:7001/console。Username/password 是 weblogic/welcome1

**注意:我們不為任何環境下Docker上的WebLogic提供支持,所以在你自己的硬盤上使用它。開發者 分布(ZIP)僅僅是為了開發環境,而且也不支持,因為它是不可打補丁的。如果你仍然想在Docker上運行WebLogic 12c Full Distribution,閱讀here's a way to set it up.

配置本地Maven倉庫

現在可以不再本地安裝WebLogic就可以使用Maven了,這對CI環境(Hudson/Jenkins)很適合。你仍然需要一步安裝,即設置 Maven插件的初始化。你一旦為你的遠程Maven倉庫安裝完畢并部署在一個遠程服務器上,其它的開發者和CI 環境就不需要在本地進行WebLogic的安裝了。對于本地開發者來說,你同樣可以把WebLogic作為一個“遠程”服務器。

配置Maven的步驟已經被寫成文檔了,地址為:Maven Synchronization Plug-in.在本地倉庫上安裝后,你可以調用sync goal來填充本地或遠程的倉庫。下面是在本地環境下填充的步驟:

  1. 到WebLogic安裝目錄的根目錄下,例如:
    $ cd /home/bruno/Work/wls12130/

  2. 進入子目錄
    $ cd oracle_common/plugins/maven/com/oracle/maven/oracle-maven-sync/12.1.3/

  3. 執行下面的命令:
    $ mvn install:install-file -DpomFile=oracle-maven-sync-12.1.3.pom -Dfile=oracle-maven-sync-12.1.3.jar

  4. 最后,調用push命令向你的倉庫(在本例中是本地倉庫)上傳所有的Maven artifacts(插件、原型等)
    $ mvn com.oracle.maven:oracle-maven-sync:push -DoracleHome=/home/bruno/Work/wls12130/

如果你想配置一個遠程的倉庫,參考文檔Populating a Remote Repository

WebLogic提供了一組原型的預配置Maven插件。讓我們創建一個簡單的Web項目使用基本WebApp Maven原型:

mvn archetype:generate
    -DarchetypeGroupId=com.oracle.weblogic.archetype
    -DarchetypeArtifactId=basic-webapp
    -DarchetypeVersion=12.1.3-0-0
    -DgroupId=org.mycompany
    -DartifactId=my-basic-webapp-project
    -Dversion=1.0-SNAPSHOT

現在你當然可以打開這個Maven項目關于NetBeans,IntelliJ IDEA,Eclipse,然后安裝WebLogic IDE。或者你可以發出下面的命令來構建,包,這場戰爭和部署工件WebLogic服務器你計算機上運行(使用碼頭工人或正常安裝):

mvn package pre-integration-test 
    -DoracleUsername=weblogic 
    -DoraclePassword=welcome1 
    -Dupload=true

我們一定要使用-Dupload = true因為我不確定您使用的是否為Docker。如果你是,那么需要上傳自容器沒有訪問您的本地文件系統(although possible!)
 

Docker, Java EE 7, 和 Maven with WebLogic 12.1.3


現在打開http://localhost:7001 / basicWebapp看看這個示例應用程序啟動并運行!

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!