私はmysql DBでホストする必要があるJavaの.warファイルを持っています。 誰でもOpenShiftでホストする正確な手順をお手伝いできますか? アプリからDBへの接続方法は?OpenShiftでのWARデプロイ
答えて
Mavenを使ってアプリケーションをビルドし、OpenShift Onlineでそれを実行していると仮定すると、組み込みのJavaテンプレートを使用できます。 「プロジェクトに追加」を使用して「Java」を選択し、「Open JDK」を選択します。それはあなたのコードに名前とgitのURLを要求します。まず、サンプルコードがどのようにビルドされ、Openshiftで実行されているかを確認するためにgit urlを使って始めてください。
コードの作成方法や実行方法が気に入らない場合は、WARをビルドするJavaデモを作成して、Openshiftにtomcat7-maven-plugin
を使用してWARを実行するよう指示します。 POMファイルには、tomcat7を使用してWARを実行し、hereと表示される「オープンシフト」のmavenプロファイルがあります。このプロファイルは、標準Openshift OpenJDKテンプレートでデフォルトで有効になっています。
Javaコードを実行したら、MySQLデータベースをプロジェクト内の別のポッド/サービスとして展開することをお勧めします。そうすれば、データベースとは独立してJavaポッドを拡張できます。もう一度、組み込みのOpenshift Onlineテンプレートを使用することができます。 「プロジェクトに追加」、「データストア」、「MySQL(永続的)」を選択し、デフォルトを使用します。
最後の部分は、Javaアプリケーションをデータベースに接続する方法です。ここでは、OpenShiftで安全に手をつないでいます。我々が見ているように、here OpenShiftは内部DNSとしてあらゆるサービスのIPを公開しています。 mysqlテンプレートを実行すると、サービス "mysql"として作成されます。これはDNSに<service>.<pod_namespace>.svc.cluster.local
として公開されます。 pod_namespaceはオープンシフトプロジェクトです。だから私のケースでは、デモコードOpenShiftプロジェクトは thinbus-srp-spring-demo
と呼ばれているので、JavaポッドはDNS名mysql.thinbus-srp-spring-demo.svc.cluster.local
を使ってmysqlサービスに接続できます。ですから、JDBC接続文字列のデータベースホスト名として設定することができます。
これらの手順は、マウスの使用方法であり、OpanJDKおよびMySqlテンプレートがインストールされたOpenShiftインスタンスを使用していることを前提としています。あなたは実際にそれらのどれも必要としません。ソリューション全体を含む独自のカスタムテンプレートを作成できます。それはかなり進んだ話題なので、私はこの答えでそれをカバーしません。
- 1. Openshift 3 WAR
- 2. アプリケーションサーバーにwarをデプロイ
- 3. sshリポジトリをOpenshift NextGenにデプロイ
- 4. Google Firebase WARファイルのデプロイ
- 5. java warアプリケーションのセキュアなデプロイ
- 6. WAR/EARのないJBossでのデプロイ
- 7. OpenShift v3でspringbootバイナリjarをデプロイ
- 8. Amazons Elastic BeanstalkにWARをデプロイ
- 9. Spring Boot:Tomcat 7にWARをデプロイ
- 10. エラスティックbeanstalkにwarファイルをデプロイ
- 11. jboss warデプロイされたリスナー
- 12. Jboss 7.0.2にwarファイルをデプロイ
- 13. WARをTomEEサーバにデプロイ
- 14. OpenShiftにデプロイした後のImagePullBackOff
- 15. コマンドラインでJboss 7.0.1にwarをデプロイ
- 16. oc4jコンテナへのservlet-warのデプロイ
- 17. WARとしてのVaadin/SpringBootのデプロイ
- 18. nodejsアプリをOpenshiftにデプロイ(503エラー)
- 19. ドメインにJava Webアプリケーションのwarファイルをデプロイ
- 20. WARをデプロイするときのヌルポインタ
- 21. JenkinsがTomcat 8にwarファイルをデプロイ
- 22. 埋め込みTomcat 7にWARをデプロイ
- 23. HerokuにJava .warアプリをデプロイする
- 24. MS AzureにJava Tomcatアプリケーション(war)をデプロイ
- 25. Spark:クラスタモードでOpenShiftにデプロイするときのStreamCorruptedException
- 26. Tomcat 7でopenshiftにあったjava-eeアプリケーションをデプロイ
- 27. OpenshiftでTomcat 7アプリケーションを再デプロイする方法
- 28. JBOSS EAPでWebコンソールを使用したWARのデプロイ
- 29. JBOSS EAP 6.4でWARファイルをデプロイする際のエラー
- 30. jenkinsのTomcat8にwarファイルをデプロイできません
どうやってそれを構築していますか? Maven? – simbo1905
オープンシフトのどのバージョンを使用していますか?また、どこに実行中ですか(例:Openshift.com)? – simbo1905
このhttps://stackoverflow.com/a/47821903/329496を参照してください。これは、オープンシフトテンプレートを使用してプロジェクトにmysqlを追加すると、openshiftがmysqlサービスを内部DNSに追加するため、javaアプリケーションがオープンDNSサーバーのmysqlサービスに表示されている内部DNS名とポートを使用して接続します。 – simbo1905