最近のアクセス:
アプリケーションをデプロイ

メインメニューから [ ビルド ] > [ アプリケーションをデプロイ ] と選択することで、アプリケーション デプロイ ツールにアクセスできます:
  • ローカルのデプロイ: Web アプリケーションのパッケージをデプロイすることができます。つまり、Web オブジェクトとサービスをパッケージ化し、対応するクラス、ライブラリ、リソースを格納した .zip、.war、.ear などを取得します。これらのファイルを Tomcat、WebSphere、JBoss、IIS、またはお好みの IaaS やホスティングプロバイダーの Web サーバーにインストールすることになります。
  • Docker コンテナへのデプロイ: アプリケーションを格納した Docker イメージをビルドできます。
  • クラウドへのデプロイ: 該当するパッケージを最も一般的な Platform as a Service (PaaS) クラウドプロバイダー (つまり、AWS Elastic Beanstalk、Google App Engine、IBM Bluemix、Microsoft Azure、SAP Cloud Platform) またはサーバーレスプラットフォーム (つまり、AWS Lambda および API Gateway) にデプロイできます。
  • バッチプロセスをパッケージ化できます。つまり、コマンド ライン プロシージャーをパッケージ化し、対応するクラス、ライブラリ、リソースを格納した .zip または .jar ファイルを取得します。コマンド ライン プロシージャーは、(AWS Lambda 関数として) サーバーレスプラットフォームにデプロイすることもできます。
アプリケーション デプロイ ツールは、拡張やカスタマイズが可能です。UI から利用できるオプションは、アプリケーションをデプロイする MSBuild タスクから利用できるすべてのオプションのごく一部です。
基本操作については、次の手順に沿って進めることができます。プラットフォームやクラウドに固有のその他の注意事項については、関連するドキュメントで取り上げられています。

手順 1: デプロイ対象の選択

[ 追加 ] / [ 消去 ] ボタンを使用して、オブジェクトを追加または削除できます。
メインオブジェクトを選択するだけで、呼び出されるすべてのオブジェクトが自動的に追加されます (ただし、リストには表示されません)。
Deployment Unit オブジェクトで選択可能なオブジェクトのみを選択できます。
イメージ:36798.png
:
  • Smart Devices オブジェクトを選択すると、そのオブジェクトに必要なすべての REST サービスがデプロイされます (Android または iOS アプリケーションはデプロイされません。サーバー側で必要なものだけです)。
  • Web コンポーネントまたはアプリケーション サーバー コンポーネントのみがデプロイされ、データベースはデプロイされません。詳細とその他のオプションについては、「再編成のエクスポート」または後述の FAQ を参照してください。

セキュリティ

セキュリティを強化する場合は、[ Application Encryption Key ] プロパティを変更します。

GAM

[ Enable Integrated Security ] プロパティが TRUE に設定されている場合は、[ Include GAM Backend ] プロパティが表示されます。 [ Include GAM Backend ] プロパティが TRUE に設定されている場合は、GAM Backend のファイルがパッケージに含まれます。それ以外の場合、GAM Backend のファイルはパッケージに含まれません。
選択内容を Deployment Unit オブジェクトに保存することも、既存の Deployment Unit を選択することもできます。Deployment Unit を選択しなかった場合は、デプロイ対象として選択したオブジェクトを含む既定の Deployment Unit が作成されます。

Tomcat、WebSphere、JBoss などへの Java アプリケーションのデプロイ

Web オブジェクトまたは Smart Devices オブジェクトをデプロイ対象として選択した場合は、 [ デプロイ ] ボタンをクリックすると、必要なバイナリとそのリソースを含む .war パッケージが作成され、次のものをサポートする Web アプリケーションサーバーにデプロイできるようになります:
  • Generic Servlets 2.4 (Apache Tomcat 5、WAS 6) (GeneXus 15 Upgrade 5 以降)
  • Generic Servlets 2.5 (Apache Tomcat 6、WAS 7)
  • Generic Servlets 3.0 (Apache Tomcat 7、WAS 8.x)
  • Generic Servlets 3.1
  • JBoss (Enterprise Java Beans)
  • Tomcat 8.x
  • WebSphere (Enterprise Java Beans)

  • Tomcat 8.x は Generic Servlets の仕様 3.1 を使用します。アプリケーションでファイルのダウンロードをサポートしている場合は、 [ ターゲット ] で [ Tomcat 8.x ] を選択してください。参考情報: SAC #41714Apache Tomcat Versions
  • JBoss の場合、再起動すると war ファイルが削除および再デプロイされるため、デプロイしたアプリケーションのファイルに何らかの変更を加えていた場合は変更が失われます (新しい変更で .war ファイルを更新するか、JBoss を再構成しない限り、war ファイルは再デプロイされます)。
[ ターゲット ] で [ ローカル ] を選択し、利用可能なアプリケーションサーバーの 1 つをリストから選択し、 [ デプロイ ] をクリックします。

IIS への .NET アプリケーションのデプロイ

Web オブジェクトまたは Smart Devices オブジェクトをデプロイ対象として選択した場合は、 [ デプロイ ] ボタンをクリックすると、必要なバイナリとリソースを含む .zip パッケージが作成され、次の Web アプリケーションサーバーにデプロイできるようになります:
  • IIS 7
  • IIS 8 (以上)
[ ターゲット ] で [ ローカル ] を選択し、利用可能なアプリケーションサーバーの 1 つをリストから選択し、 [ デプロイ ] をクリックします。

Docker コンテナへのアプリケーションのデプロイ

[ ターゲット ] で [ Docker Image ] を選択した場合、GeneXus はアプリケーションで Docker イメージを作成し、デプロイできるようにします。詳細については、「Docker にアプリケーションをデプロイする方法」を参照してください。

クラウド (PaaS) へのアプリケーションのデプロイ

Web オブジェクトまたは Smart Devices オブジェクトをデプロイ対象として選択し、 [ ターゲット ] で [ ローカル ] と [ Docker Image ] 以外を選択した場合は、 [ デプロイ ] ボタンをクリックすると、必要なバイナリとリソースを含むパッケージが作成され、クラウドにデプロイできるようになります。最終的に、 [ Deploy Target ] プロパティで設定した資格情報とオプションを使用してクラウドにデプロイされます。
イメージ:32099.png
注: パッケージのみを作成する場合は、 [ パッケージのみ ] をマークします。
.NET に利用可能なクラウドターゲット: AWS Elastic Beanstalk、Microsoft Azure Web Apps
Java に利用可能なクラウドターゲット: AWS Elastic Beanstalk、Google App Engine、IBM Bluemix、SAP Cloud Platform、AWS Serverless、AWS Lambda 関数、Microsoft Azure Web Apps
.NET Core に利用可能なクラウドターゲット: Microsoft Azure Web Apps
詳細情報: IBM Bluemix にアプリケーションをデプロイする方法Azure Web アプリとしてデプロイSAP Cloud Platform にアプリケーションをデプロイする方法AWS Elastic Beanstalk にアプリケーションをデプロイする方法Google App Engine にアプリケーションをデプロイする方法アプリケーションを AWS Lambda および AWS API Gateway にデプロイする方法コマンド ライン プロシージャーを AWS Lambda に関数としてデプロイする方法
注: デプロイ管理、デプロイのトレース、および本番用クラウド環境の作成支援が必要な場合は、GeneXus Cloud Deployment Services を利用してください。

バッチプロセスのデプロイ

1 つのみまたは複数のプロシージャーを選択し ( [ Main program ] = True、 [ Call protocol ] = [ Command Line ] または [ Internal ] 、 [ Expose as Web service ] = False)、 [ ターゲット ] で [ ローカル ] を選択した場合は、 [ デプロイ ] ボタンをクリックすると、実行に必要なバイナリとリソースを含むパッケージ (.zip または .jar) が作成されます。

EAR のデプロイ

選択したオブジェクト (または呼び出されるオブジェクト) が EJB である場合は、デプロイツールで .ear (Enterprise Archive Resource) ファイルが作成されます。
生成された EAR には、すべてのサーブレットと静的コンテンツを含む 1 つの Web アプリケーション、すべての EJB が定義された 1 つの EJB アプリケーション、そしてアプリケーションで必要になるすべての JAR ファイルが格納されています。

追加のファイルとディレクトリーのデプロイ

デプロイパッケージに追加のファイルを含めるには、次のようにします。
  • File オブジェクトを選択します。デプロイツールが所定のパス ( [ Extract to path ] プロパティで設定) からファイルを取得し、デプロイパッケージに追加できるようにするために、ファイルに対して [ Extract ] プロパティを設定する必要があります。
  • <ナレッジベースディレクトリー>\<ターゲット環境のパス>\web\<Deployment Unit オブジェクト名>_user.gxdproj を作成または変更し、追加するファイルまたはディレクトリーを設定します。(*)
展開するパッケージの構成ファイル (Java の web.xml や .NET の web.config) を変更する必要があるが、構成ファイルを新たに作成したくない場合は、ApplicationServers\Template の下にある GeneXus ディレクトリーのテンプレートを変更することができます (Java の場合は JavaWeb\Generic_Servlet_Base.stg、.NET の場合は \CsharpWeb\IIS_base.stg)。
(*) user.gxdproj のファイル名は、GeneXus 16 Upgrade 8 で <Deployment Unit オブジェクト名>_user.gxdproj に変更されました。これは、Deployment Unit ごとに異なるファイルとディレクトリーをデプロイできるようにするためです。

Deployment Unit からオブジェクトを除外する方法

よくある質問

Q: パッケージはどこに作成されますか。
A: 出力ウィンドウで詳細を確認してください。パッケージは通常次のパスに作成されます: '<ナレッジベースディレクトリー>\<環境のディレクトリー>\Deploy\<ターゲット>\<デプロイメントユニット名>\<タイムスタンプ>\'。 [ ツール ] / [ ターゲット環境のディレクトリーを開く ] を使用して親フォルダに移動すると、Deploy フォルダが表示されます。
Q: どの程度インテリジェントに機能しますか。 [ classpath ] プロパティで設定したすべてのファイルまたはディレクトリーがパッケージ化されますか。
A: いいえ。GeneXus とアプリケーション デプロイ ツールの組み合わせは優秀ですが、そこまでインテリジェントではありません。対象となるのは、環境に対応するドライバーとアプリケーションで使用されるライブラリのみです (つまり、Excel ファイルが作成されない場合、POI ライブラリなどは含まれません)。したがって、追加のファイル (jar など) をアプリケーションとともにデプロイする必要がある場合は、それらをファイルとしてナレッジベースに追加し、そのファイルを通常のメインオブジェクトの場合と同様に [ デプロイ ] ダイアログに追加する必要があります。詳細については、「アプリケーションパッケージへの追加ファイルの追加」を参照してください。
Q: アプリケーションで Query Viewer を使用できますか。
A: はい。選択したオブジェクトで Query Viewer コントロールを使用している場合、Query Viewer ユーザーコントロールと参照先の Query オブジェクトに対応するバイナリとリソースが取得されます。
Q: GAM についてはどうですか。
A: [ Enable Integrated Security ] プロパティを True に設定している場合は、GAM API に対応するバイナリとリソースが取得されます。GAM Example Web オブジェクトをパッケージ化する必要がある場合は、リストに GAMHome を追加してください。GAM のテーブルが初期化されたり、必要なアクセス許可やロールなどが設定されたりすることはありません。それについては、「GAM アプリケーションのデプロイ」を参照してください。
Q: GXflow 受信トレイとその API はデプロイされますか。
A: はい。ナレッジベースバージョンに BPM ダイアグラムが含まれている場合は、対応するバイナリとリソースが取得されます。
Q: ビジネスプロセスで参照されているオブジェクトをデプロイするにはどうすればよいですか。
A: Business Process Diagram を選択すると、そのダイアグラムで使用されているオブジェクトがデプロイされます。注: ワークフローテーブルには影響しません。その方法については、「ワークフローベースのアプリケーションをデプロイする方法」を参照してください。
Q: 再編成用のデプロイパッケージを作成するにはどうすればよいですか。
A: このオプションは、 [ ビルド ] / [ 再編成をエクスポート ] で利用できます。詳細については、「再編成をエクスポート」を参照してください。
Q: トレースとデプロイ管理についてはどうですか。
A: GeneXus Cloud Deployment Services で対応します。※日本では対応しておりません。GeneXus Cloud Sandbox で無料でお試しいただけます。
Q: プロトタイピング用の領域はクラウドに用意されていますか。
A: はい。2012 年以降、クラウドプロトタイピングで利用可能なサーバーが用意されています。※日本では対応しておりません。[ Deploy to cloud ] プロパティを使用して、F5 を押すと、クラウドでのプロトタイピングを無料で行うことができます。

参考情報




サブページ
Created: 17/11/12 20:20 by Admin Last update: 20/12/27 21:39 by Admin
カテゴリ
Powered by GXwiki 3.0