日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

openshift使用_OpenShift v3:使用WildFly和MySQL的Java EE 7入门

發布時間:2023/12/3 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 openshift使用_OpenShift v3:使用WildFly和MySQL的Java EE 7入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

openshift使用

OpenShift是Red Hat的開源PaaS平臺。 OpenShift v3 (將于今年發布)將提供使用Docker和Kubernetes運行微服務的整體體驗。 以經典的Red Hat方式,所有工作都在OpenShift Origin的開源中完成。 這也將推動OpenShift Online和OpenShift Enterprise的下一個主要版本。

OpenShift v3使用了一個新的平臺堆棧,該平臺使用了Red Hat貢獻的大量社區項目,例如Fedora,Centos,Docker,Project Atomic,Kubernetes和OpenStack。 結合了Docker,Kubernetes,Atomic和更多內容的OpenShift v3平臺詳細解釋了該平臺堆棧。

該技術提示將說明如何開始使用OpenShift v3,讓我們開始吧!

OpenShift v3入門

可以從GitHub的Origin下載用于OpenShift v3的預構建二進制文件。 但是,最簡單的入門方法是將OpenShift Origin作為Docker容器運行。

OpenShift Application Lifecycle提供了從頭開始運行示例應用程序所需的完整詳細信息。 該博客將使用這些步驟,并使它們適應于在Mac上使用boot2docker VM運行。 在此過程中,我們還將在WildFly上部署Java EE 7應用程序,該應用程序將訪問單獨MySQL容器上的數據庫。

這是我們的部署圖:

  • WildFly和MySQL在不同的Pod上運行。
  • 它們每個都包裝在Replication Controller中,以簡化擴展。
  • 每個復制控制器均作為服務發布。
  • WildFly與MySQL服務對話,而不是直接與pod對話。 這一點很重要,因為Pod和分配給它們的IP地址都是短暫的。

讓我們開始吧!

配置Docker守護程序

  • 在主機上配置Docker守護程序以信任將要啟動的Docker注冊表服務。 該注冊表將用于推送映像以進行構建/測試/部署。
    • 以以下方式登錄到boot2docker VM: boot2docker ssh
    • 編輯檔案 sudo vi /var/lib/boot2docker/profile

      這將是一個空文件。

    • 添加以下名稱/值對: EXTRA_ARGS="--insecure-registry 172.30.17.0/24"

      保存文件,然后退出編輯器。

    這將指示Docker守護程序信任172.30.17.0/24子網中的任何Docker注冊表。

  • 查看OpenShift v3和Java EE 7示例

  • 下載并安裝Go并設置GOPATH和PATH環境變量 。 簽出OpenShift原始目錄: openshift> git clone https://github.com/openshift/origin.git Cloning into 'origin'... remote: Counting objects: 21451, done. remote: Compressing objects: 100% (76/76), done. remote: Total 21451 (delta 26), reused 15 (delta 1) Receiving objects: 100% (21451/21451), 35.11 MiB | 1.24 MiB/s, done. Resolving deltas: 100% (11392/11392), done. Checking connectivity... done.

    請注意其檢出的目錄。 在這種情況下,它的? /workspaces/openshift 。

    構建工作空間:

    make release origin> make release rm -rf _output Godeps/_workspace/pkg hack/build-release.sh Unable to find image 'openshift/origin-release' locally Pulling repository openshift/origin-release c59f040a4054: Download complete 511136ea3c5a: Download complete 5b12ef8fd570: Download complete dade6cb4530a: Download complete bd195712b86c: Download complete 4aae29c1c846: Download complete d8738da3ed4c: Download complete 7f7491063665: Download complete b5cfa9eebdb5: Download complete 2f6297477756: Download complete dc98bd93df2f: Download complete 1be2a7550a3d: Download complete 42fd088f8c55: Download complete b6f6ad4012df: Download complete Status: Downloaded newer image for openshift/origin-release:latest
  • 檢出已轉換為Kubernetes應用程序的javaee7-hol工作區 : origin> git clone https://github.com/bparees/javaee7-hol Cloning into 'javaee7-hol'... remote: Counting objects: 1159, done. remote: Compressing objects: 100% (49/49), done. remote: Total 1159 (delta 35), reused 37 (delta 21) Receiving objects: 100% (1159/1159), 20.35 MiB | 1.78 MiB/s, done. Resolving deltas: 100% (605/605), done. Checking connectivity... done.

    這也可以在~/workspaces/openshift目錄中完成。

  • 啟動OpenShift v3容器

  • 將OpenShift Origin作為Docker容器啟動: ~> docker run -d --name "openshift-origin" --net=host --privileged \-v /var/run/docker.sock:/var/run/docker.sock \-v /Users/arungupta/workspaces/openshift:/workspaces/openshift \-v /usr/local/bin/docker:/usr/bin/docker \openshift/origin start --public-master=$(boot2docker ip)The VM's Host only interface IP address is: 0ae85091e7ad7e85697575369f008273a6673d112b49860f5557a61d9e82d908

    注意~/workspaces/openshift目錄在容器中作為/workspaces/openshift卷掛載。 還安裝了一些其他卷。

    檢查容器是否正在運行:

    ~> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0ae85091e7ad openshift/origin:beta1 "/usr/bin/openshift 2 minutes ago Up 2 minutes openshift-origin
  • 以以下方式登錄到容器: openshift> docker exec -it `docker ps | grep origin:beta1 | awk '{ print $1 }'` bash [root@boot2docker openshift]#
  • 通過提供以下命令在容器中安裝Docker注冊表: export CERT_DIR=/var/lib/openshift/openshift.local.certificates/openshift-client && \ export KUBECONFIG=/var/lib/openshift/openshift.local.certificates/admin/.kubeconfig && \ cd /workspaces/openshift/origin && hack/install-registry.sh
  • 通過獲取Pod列表來確認注冊表正在運行: [root@boot2docker origin]# osc get pods POD IP CONTAINER(S) IMAGE(S) HOST LABELS STATUS docker-registry-1-gfkbz 172.17.0.14 registry-container openshift/docker-registry boot2docker/127.0.0.1 deployment=docker-registry-1,deploymentconfig=docker-registry,name=registrypod,template=docker-registry-template Running

    osc是OpenShift Client CLI ,可用于創建和管理OpenShift項目。 一些kubectl命令也可以使用此腳本。

  • 確認注冊表服務正在運行。 請注意,實際IP地址可能會有所不同: [root@boot2docker origin]# osc get services NAME LABELS SELECTOR IP PORT docker-registry template=docker-registry-template name=registrypod 172.30.17.142 5001 kubernetes component=apiserver,provider=kubernetes <none> 172.30.17.2 443 kubernetes-ro component=apiserver,provider=kubernetes <none> 172.30.17.1 80
  • 確認注冊表服務可訪問: curl `osc get services docker-registry -o template --template="{{ .portalIP}}:{{ .port }}"`

    并尋找輸出:

    "docker-registry server (dev) (v0.9.0)"
  • 訪問OpenShift v3 Web控制臺

  • OpenShift Origin服務器現在已啟動并正在運行。 使用boot2docker ip查找主機的IP地址,然后打開http:// <boot2docker主機的IP地址>:8444以在瀏覽器中查看OpenShift Web控制臺。例如,可從https://192.168.59.103:8444訪問該控制臺/在這臺機器上。

    您需要讓瀏覽器在https://<host>:8444接受證書,然后控制臺才能查詢OpenShift API。 當然,使用合法證書就不需要這樣做。

  • 出現OpenShift Origin登錄屏幕。 輸入用戶名/密碼作為admin / admin:

    然后點擊“登錄”按鈕。 默認的Web控制臺如下所示:

  • 創建OpenShift v3項目

  • 在OpenShift v3容器中使用github.com/openshift/origin/blob/master/examples/sample-app/project.json中的project.json并創建一個測試項目,如下所示: [root@boot2docker origin]# osc create -f /workspaces/openshift/origin/examples/sample-app/project.json test

    現在刷新Web控制臺將顯示:

    單擊“ OpenShift 3 Sample”將顯示一個空的項目描述:

  • 請求創建應用程序模板: [root@boot2docker openshift]# cd javaee7-hol/ [root@boot2docker javaee7-hol]# osc process -n test -f application-template-jeebuild.json | osc create -n test -f - frontend origin-jee-sample wildfly-8-centos jee-sample-build frontend mysql database
  • Web控制臺自動刷新并顯示:

    正在運行的服務列表可以看成是:

  • 建立項目

  • 觸發項目的初始構建: [root@boot2docker javaee7-hol]# osc start-build -n test jee-sample-build cee73fbc-b32d-11e4-a0f2-5282784576db
  • 監視構建并等待狀態變為“完成”(這可能需要幾分鐘): [root@boot2docker javaee7-hol]# osc get -n test builds NAME TYPE STATUS POD cee73fbc-b32d-11e4-a0f2-5282784576db STI Running build-cee73fbc-b32d-11e4-a0f2-5282784576db

    您可以添加–watch標志以等待更新,直到構建完成:

    [root@boot2docker javaee7-hol]# osc get -n test builds --watch NAME TYPE STATUS POD cee73fbc-b32d-11e4-a0f2-5282784576db STI Running build-cee73fbc-b32d-11e4-a0f2-5282784576db NAME TYPE STATUS POD cee73fbc-b32d-11e4-a0f2-5282784576db STI Complete build-cee73fbc-b32d-11e4-a0f2-5282784576db

    等待STATUS欄顯示Complete 。 設置所有組件(WIldFly,MySQL,Java EE 7應用程序)將花費幾分鐘。 實際上,將創建它們的新Docker映像并將其推送到之前啟動的本地注冊表中。

    狀態更改為Complete后, Ctrl+C停止監視構建。

  • 構建的完整日志可以看成是: [root@boot2docker javaee7-hol]# osc build-logs -n test cee73fbc-b32d-11e4-a0f2-5282784576db 2015-02-13T03:10:07.065718606Z Cloning into '/tmp/sti552730161/upload/src'... 2015-02-13T03:11:03.184576532Z I0213 03:11:03.184326 1 build.go:160] Successfully built 172.30.17.142:5001/test/origin-jee-sample 2015-02-13T03:11:07.261489310Z The push refers to a repository [172.30.17.142:5001/test/origin-jee-sample] (len: 1) 2015-02-13T03:11:07.261489310Z Sending image list 2015-02-13T03:11:07.275256699Z Pushing repository 172.30.17.142:5001/test/origin-jee-sample (1 tags) 2015-02-13T03:11:07.307836081Z Pushing Buffering to disk07.314345045Z Buffering to disk 1.024 kB 2015-02-13T03:11:07.315452728Z Buffering to disk Pushing-13T03:11:07.323973430Z Pushing [=========================> ] 512 B/1.024 kB 0. . .Pushing-13T03:13:05.932725921Z Pushing [================================================> ] 6.56 MB/6.704 MB 0 Pushing-13T03:13:05.942989165Z Pushing [=================================================> ] 6.635 MB/6.704 MB 0 Pushing-13T03:13:05.943025109Z Pushing [=================================================> ] 6.702 MB/6.704 MB 0 Pushing-13T03:13:05.947665528Z Pushing [==================================================>] 6.704 MB/6.704 MB 2015-02-13T03:13:05.953476634Z Image successfully pushed 2015-02-13T03:13:05.953476634Z Pushing tag for rev [b0a7868377c1] on {http://172.30.17.142:5001/v1/repositories/test/origin-jee-sample/tags/latest}
  • 檢查要啟動的應用程序容器: [root@boot2docker javaee7-hol]# osc get -n test pods POD IP CONTAINER(S) IMAGE(S) HOST LABELS STATUS build-cee73fbc-b32d-11e4-a0f2-5282784576db 172.17.0.17 sti-build openshift/origin-sti-builder:v0.3 boot2docker/127.0.0.1 <none> Succeeded database-1-axe6d 172.17.0.16 jee-database mysql boot2docker/127.0.0.1 deployment=database-1,deploymentconfig=database,name=database,template=jee-sample Running frontend-1-pkcia 172.17.0.20 jee-sample 172.30.17.142:5001/test/origin-jee-sample:b0a7868377c10a50b40019be70e22d040b9a2bb2d87fa3932b700494e50a4de6 boot2docker/127.0.0.1 deployment=frontend-1,deploymentconfig=frontend,name=frontend,template=jee-sample Running

    請注意,“前端”和“數據庫”窗格現在正在運行。

  • 確定“前端”服務的IP: [root@boot2docker javaee7-hol]# osc get -n test services NAME LABELS SELECTOR IP PORT frontend template=jee-sample name=frontend 172.30.17.115 8080 mysql template=jee-sample name=database 172.30.17.75 3306
  • 通過http:// <“前端”的IP地址>:8080 / movieplex7-1.0-SNAPSHOT可以訪問應用程序。 請注意,IP地址可能(很可能會)有所不同。 在這種情況下,它將是http://172.30.17.115:8080/moviexplex7-1.0-SNAPSHOT。由于將OpenShift v3用作Docker容器時,在Mac上配置防火墻需要進行一些進一步的調試才能配置該應用程序。 在弄清楚這一點之前,您可以在boot2docker VM中執行docker docker ps以查看所有容器的列表: origin> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c776cabb72f8 172.30.17.17:5001/test/origin-jee-sample:91d1b5a5ed58e1642aafbd652eba0b7eae3a0ac08c17729d205ae88204f64449 "/tmp/scripts/run" 2 hours ago Up 2 hours k8s_jee-sample.7af25557_frontend-2-9ciae.test.api_12a0d77e-b3b5-11e4-81f6-5282784576db_53f91f55 e7f87112c473 openshift/origin-pod:beta1 "/pod" 2 hours ago Up 2 hours k8s_POD.9cbfdefa_frontend-2-9ciae.test.api_12a0d77e-b3b5-11e4-81f6-5282784576db_64263b61 7e7579db5f82 openshift/origin-pod:beta1 "/pod" 2 hours ago Up 2 hours k8s_POD.123cbdd6_build-e075047d-b3b4-11e4-81f6-5282784576db.test.api_e07bcdb2-b3b4-11e4-81f6-5282784576db_376c0e63 74082d7791ec openshift/origin-pod:beta1 "/pod" 2 hours ago Up 2 hours k8s_POD.123cbdd6_build-76364bb6-b3b2-11e4-81f6-5282784576db.test.api_7639e3a5-b3b2-11e4-81f6-5282784576db_f653c7fd 3e42dacb0da7 mysql:latest "/entrypoint.sh mysq 3 hours ago Up 3 hours k8s_jee-database.f12628ae_database-1-bqg8v.test.api_56093bac-b3b2-11e4-81f6-5282784576db_193dddf7 cb551c8cf7bf openshift/origin-pod:beta1 "/pod" 3 hours ago Up 3 hours k8s_POD.95f2def6_database-1-bqg8v.test.api_56093bac-b3b2-11e4-81f6-5282784576db_295fc320 e8719152df42 openshift/docker-registry:latest "\"sh -c 'echo \"$OP 3 hours ago Up 3 hours k8s_registry-container.4e338487_docker-registry-1-bt49s.default.api_177a691c-b3b0-11e4-81f6-5282784576db_a6f4f83b d3ecc5841c3b openshift/origin-pod:beta1 "/pod" 3 hours ago Up 3 hours k8s_POD.8a29deef_docker-registry-1-bt49s.default.api_177a691c-b3b0-11e4-81f6-5282784576db_ba53d62b a506222fae91 openshift/origin:beta1 "/usr/bin/openshift 3 hours ago Up 3 hours openshift-origin

    然后以以下方式登錄到與前端關聯的容器:

    docker exec -it `docker ps | grep origin-jee-sample | awk '{ print $1 }'` bash

    這將登錄到Docker容器,您可以通過提供以下命令來檢查應用程序是否已成功部署:

    bash-4.2$ curl http://localhost:8080/movieplex7-1.0-SNAPSHOT/

    這將從應用程序中打印index.html頁面,該應用程序的頂部和頂部都有許可證。

    現在,一旦防火墻問題解決,該頁面也將在主機Mac上也可以訪問。

  • 讓我們總結一下:

    • 克隆了OpenShift Origin和Java EE 7示例存儲庫
    • 將OpenShift v3作為Docker容器啟動
    • 加載了OpenShift v3 Web控制臺
    • 創建一個OpenShift v3項目
    • 加載的Java EE 7應用程序模板
    • 觸發了構建,從而部署了應用程序
    • 如果遇到問題,這里有一些故障排除提示 。

    請享用!

    翻譯自: https://www.javacodegeeks.com/2015/02/openshift-v3-getting-started-java-ee-7-using-wildfly-mysql.html

    openshift使用

    總結

    以上是生活随笔為你收集整理的openshift使用_OpenShift v3:使用WildFly和MySQL的Java EE 7入门的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。