idealista.java_role
Java Ansibleロール
このAnsibleロールは、異なるベンダー(OpenJDK、AdoptOpenJDK、Corretto)のJDKを、Debian/UbuntuまたはCentOS環境にインストールします。
始めに
これらの手順でAnsibleプレイブック用のロールを取得できます。
実行すると、DebianまたはRHELパッケージを使用してJavaがインストールされます。
前提条件
このロールをプレイブックの依存関係として使用するには、以下の前提条件があります:
- Ansibleのバージョンが2.9.0以上であること。
- 対象インベントリがDebian/UbuntuまたはCentOS環境であること。
テスト目的でPython 3.7+とPipenvが必要です。
インストール
ロールの依存ファイル(例:requirements.yml)を作成または追加します:
- src: http://github.com/idealista/java_role.git
scm: git
version: 7.0.0
name: java
または、Ansible Galaxyを使用することもできます:
- src: idealista.java_role
version: 7.0.0
name: java
また、Docker HubでDebian StretchとBuster、Ubuntu Xenial、Bionic、Focal、CentOS 7と8のタグ付けされたDockerイメージを見つけることもできます。
ansible-galaxyコマンドでロールをインストールします:
$ ansible-galaxy install -p roles -r requirements.yml -f
プレイブックで使用するには:
---
- hosts: someserver
roles:
- java
使い方
Docker Hub
私たちはすべてのロールバージョンをDocker HubにDockerイメージとして公開しています:https://hub.docker.com/r/idealista/jdk。
次のコマンドでイメージを引き出せます:
docker pull idealista/jdk:${JDK_VERSION}-${DOCKER_IMAGE_BASE}-${JDK_VENDOR}headless)
JDK_VERSION:
お好みのJDKバージョン。
DOCKER_IMAGE
: 現在サポートしているのは stretch
/buster
/bullseye
のDebianバージョン、 xenial
/bionic
/focal
のUbuntuバージョン、及び 7
/8
のCentOSバージョンです。
JDK_VENDOR
: 現在サポートしているのは openjdk
/ adoptopenjdk
/corretto
です。
例えば:
docker pull idealista/jdk:8u191-xenial-openjdk-headless
バージョン(タグ)のリストはDocker Hubで確認できます。
Ansible
OpenJDK
特定のOpenJDKバージョンを選択するには、java_open_jdk_version_major
変数を上書きする必要があります:
オペレーティングシステム | OpenJDKメジャーリリース |
---|---|
Debian Stretch | 8 (デフォルト) |
Debian Stretch | 11 |
Debian Buster | 11 (デフォルト) |
Debian Bullseye | 17 |
Debian Bullseye | 11 (デフォルト) |
Debian Bookworm | 17 |
Debian Bookworm | 17 (デフォルト) |
Ubuntu Xenial | 8 |
Ubuntu Xenial | 9 (デフォルト) |
Ubuntu Bionic | 8 |
Ubuntu Bionic | 11 (デフォルト) |
Ubuntu Focal | 8 |
Ubuntu Focal | 11 |
Ubuntu Focal | 17 (デフォルト) |
Ubuntu Jammy | 11 |
Ubuntu Jammy | 17 (デフォルト) |
CentOS 7 | 1.6.0 |
CentOS 7 | 1.7.0 |
CentOS 7 | 1.8.0 |
CentOS 7 | 11 (デフォルト) |
CentOS 8 | 1.8.0 |
CentOS 8 | 11 (デフォルト) |
GNU/Linuxディストリビューションストリームにない他のOpenJDK実装は正式にはサポートされていませんが、追加のリポジトリを追加することでこのロールを簡単に使用できます(AdoptOpenJDK/TemurinおよびCorrettoディレクトリのvars/を参照)。
Javaのトラストストアに証明書を追加
このロールは、Javaのトラストストアに証明書を追加することをサポートしています。トラストストアの場所はJavaのバージョンによって異なる場合があります:
- Java 9以降のトラストストアの場所: $JAVA_HOME/lib/security/cacerts
- Java 9以前のトラストストアの場所: $JAVA_HOME/jre/lib/security/cacerts
特定のトラストストアの場所を選択するには、java_keystore_dir
変数を上書きして、追加したい証明書をjava_certs
変数で設定します。また、トラストストアのパスワードはjava_cert_keystore_pass
で設定します。
テスト
$ pipenv sync
$ DOCKER_IMAGE_BASE=(debian:stretch-slim|debian:buster-slim|debian_bullseye-slim|amd64/ubuntu:xenial|amd64/ubuntu:bionic|amd64/ubuntu:focal|centos:7|centos:8) JDK_VENDOR=(`java_jdk_version` openjdk|adoptopenjdk|corretto) JDK_MAJOR=(`java_open_jdk_version_major` サポートされているバージョンは[.travis.yml](.travis.yml)ファイルで確認できます) JDK_VERSION=(`java_open_jdk_version` サポートされているバージョンは[.travis.yml](.travis.yml)ファイルで確認できます) pipenv run molecule test
注: JDK_VENDORはオプションのパラメータで、定義しない場合はこのロールはopenjdkを使用します。 注: JDK_VERSIONはオプションのパラメータで、定義しない場合はこのロールは選択したJavaメジャーリリースの最新のパッケージをインストールします。 注: デフォルトのLinuxディストリビューションはdebian9 (Debian Stretch)です。
テストプラットフォームの詳細はmoleculeディレクトリを確認してください。
使用技術
バージョン管理
使用可能なバージョンはこのリポジトリのタグで確認できます。
各バージョンの変更点はCHANGELOG.mdファイルで確認できます。
著者
- Idealista - 共同作業 - idealista
このプロジェクトに参加した貢献者のリストもご覧ください。
ライセンス
本プロジェクトはApache 2.0ライセンスの下でライセンスされています - 詳細はLICENSEファイルを参照してください。
貢献
私たちの行動規範やプルリクエストを提出する際の手順については、CONTRIBUTING.mdをお読みください。
Java role, installs JDKs from different vendors (OpenJDK, AdoptOpenJDK and Corretto) and sets system defaults
ansible-galaxy install idealista.java_role