1

CloudFoundryでJettyRunnerアプリケーションを起動しようとしています。コードは

https://github.com/simbo1905/ZkToDo2

ローカルで開始できます

java -Djetty.host=localhost -Djetty.port=8080 -DDATABASE_URL=jdbc:postgresql://postgres:postgres@localhost/postgres -jar jetty-runner-jmx.jar zktodo2.war

だから私はpostgresqlを作成しました

vmc create-service postgresql pgsql

jarファイルとwarをzip形式で圧縮してから、Cloud Foundryにデプロイしようとすると、メモリ不足エラーが発生します。何が得られますか?

simbo$ vmc push zktodo2 --path=cf.zip 
Detected a Standalone Application, is this correct? [Yn]: Y
1: java
2: node
3: node06
4: ruby18
5: ruby19
Select Runtime [java]: \1
Selected java
Start Command: java -Djetty.host=${VCAP_APP_HOST} -Djetty.port=${VCAP_APP_PORT} -DDATABASE_URL=jdbc:postgresql://postgres:postgres@localhost/postgres -jar jetty-runner-jmx.jar zktodo2.war
Application Deployed URL [None]: 
Memory reservation (128M, 256M, 512M, 1G, 2G) [512M]: 1G
How many instances? [1]: 
Bind existing services to 'zktodo2'? [yN]: y
1: pgsql
Which one?: 1
Create services to bind to 'zktodo2'? [yN]: 
Would you like to save this configuration? [yN]: y
Manifest written to manifest.yml.
Creating Application: OK
Binding Service [pgsql]: OK
Uploading Application:
  Checking for available resources: OK
  Processing resources: OK
  Packing application: OK
  Uploading (0K): OK   
Push Status: OK
Staging Application 'zktodo2': OK                                               
Starting Application 'zktodo2': .
Error: Application [zktodo2] failed to start, logs information below.

====> /logs/stderr.log <====

Could not create the Java virtual machine.

====> /logs/stdout.log <====

  Error occurred during initialization of VM
  Could not reserve enough space for object heap


  Delete the application? [Yn]: 

何が得られますか?

4

2 に答える 2

2

Cloud Foundryは、選択したメモリ割り当ての-Xmx設定をJAVA_OPTS env変数に追加します。これは、startコマンド(java $ JAVA_OPTS -Djetty ....)に含める必要があります。または、開始コマンドに-Xmxを含めることもできます。

于 2012-06-25T15:40:26.367 に答える
1

私はZkToDo2をjetty-runnerを使用してcloudfoundryにデプロイしました。これが私が使用した開始コマンドです:

java -Djava.io.tmpdir=. -Dorg.apache.jasper.compiler.disablejsr199=true -Xmx512M -jar jetty-runner-jmx.jar --port ${VCAP_APP_PORT} zktodo2.war

DATABASE_URLをcloudfoundryによってプロビジョニングされたpostgresqlデータベースの接続パラメーターと一致させるために、アプリにいくつかの小さな変更を加える必要がありました。

これがプルリクエストです。

于 2012-07-19T08:35:06.110 に答える