11

.ebextensionsに保存されている構成ファイルを使用して、Oracle Java 1.7 を Elastic Beanstalk インスタンスにインストールするための適切な構成スクリプトを思いついた人はいますか? Elastic Beanstalk の tomcat7 バージョンを使用しており、次を使用して yum で openJDK をインストールできました。

packages:
  yum:
    java-1.7.0-openjdk: []
    java-1.7.0-openjdk-devel: []

commands:
  use_java7:
    command: alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java

OpenJDKではなくOracle Java 1.7を使用したいのですが、yumにはそれがネイティブにリポジトリにありません。

4

3 に答える 3

12

この構成ファイルを試してください

files:
  "/home/ec2-user/install-oracle-jdk.sh":
    mode: "000755"
    owner: ec2-user
    group: ec2-user
    content: |
      #!/usr/bin/env bash
      wget -O jdk-7u25-linux-x64.rpm --no-cookies --no-check-certificate --header 'Cookie:gpw_e24=http://www.oracle.com; oraclelicense=accept-securebackup-cookie' 'http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-x64.rpm'      
      rpm -Uvh /home/ec2-user/jdk-7u25-linux-x64.rpm
      alternatives --install /usr/bin/java java /usr/java/default/bin/java 3
      alternatives --set java /usr/java/default/bin/java

commands:
  execute-install-oracle-jdk-script:
    command: ./install-oracle-jdk.sh
    cwd: /home/ec2-user
于 2013-09-24T19:53:18.243 に答える
2

または、通常どおりにインストールして、この ami を新しい ec2 インスタンスを作成するための ami として使用することもできます。

于 2013-11-25T10:17:32.517 に答える
0

受け入れられた答えはもはや機能しません。時代遅れです。これは私のために働いた:

# Install Oracle JDK
rpm --erase --nodeps java-1.6.0-openjdk java-1.6.0-openjdk-devel
rpm -Uvh .ebextensions/jdk-6u45-linux-amd64.rpm
/usr/sbin/alternatives --install /usr/bin/java java /usr/java/default/bin/java 3
/usr/sbin/alternatives --set java /usr/java/default/bin/java
/usr/sbin/alternatives --install /usr/bin/java_sdk java_sdk /usr/java/default/bin/java 3
/usr/sbin/alternatives --set java_sdk /usr/java/default/bin/java

必要だったので、これはJava 6用です。また、Oracle からダウンロードした jdk は実際には現在 bin ファイル (Oracle のカスタム sh スクリプト エクストラクタ) であるため、Oracle から bin ファイルをダウンロードし、それを抽出して RPM を取得し、RPM を ebextensions 内に含めました。

実行する sh スクリプトを ebextensions 構成ファイルに含めるだけです (よくわからない場合は、google ebextenions 構成)。

これが誰かに役立つことを願っています。

于 2015-04-10T04:06:47.670 に答える