idealista.java_role
Java Ansible Rolle
Diese Ansible Rolle installiert JDKs von verschiedenen Anbietern (OpenJDK, AdoptOpenJDK und Corretto) in einer Debian/Ubuntu oder CentOS Umgebung.
Erste Schritte
Diese Anleitung hilft dir, eine Kopie der Rolle für dein Ansible Playbook zu erhalten.
Nach dem Start wird Java mit Debian- oder RHEL-Paketen installiert.
Voraussetzungen
Um diese Rolle als Abhängigkeit in deinem Playbook zu verwenden, benötigst du die folgenden Voraussetzungen:
Ansible Version >=2.9.0 installiert. Das Zielinventar sollte eine Debian/Ubuntu oder CentOS Umgebung sein.
Für Testzwecke benötigst du Python 3.7+, Pipenv.
Installation
Erstelle oder füge deiner Abhängigkeitsdatei für Rollen (z.B. requirements.yml) hinzu:
- src: http://github.com/idealista/java_role.git
scm: git
version: 7.0.0
name: java
Oder verwende Ansible Galaxy als Ursprung, wenn du das bevorzugst:
- src: idealista.java_role
version: 7.0.0
name: java
Alternativ kannst du getaggte Docker-Images für Debian Stretch und Buster, Ubuntu Xenial, Bionic und Focal sowie CentOS 7 und 8 in Docker Hub finden.
Installiere die Rolle mit dem ansible-galaxy Befehl:
$ ansible-galaxy install -p roles -r requirements.yml -f
Verwendung in einem Playbook:
---
- hosts: someserver
roles:
- java
Benutzung
Docker Hub
Wir veröffentlichen jede Rollen-Version als Docker-Image im Docker Hub: https://hub.docker.com/r/idealista/jdk.
Du kannst unsere Images herunterladen, indem du ausführst:
docker pull idealista/jdk:${JDK_VERSION}-${DOCKER_IMAGE_BASE}-${JDK_VENDOR}headless)
JDK_VERSION:
Bevorzugte JDK-Version.
DOCKER_IMAGE
: Unterstützte Optionen: stretch
/buster/bullseye
für Debian Versionen, xenial
/bionic
/focal
für Ubuntu Versionen und 7
/8
für CentOS Versionen.
JDK_VENDOR
: Unterstützte Optionen: openjdk
/ adoptopenjdk
/corretto
.
Zum Beispiel:
docker pull idealista/jdk:8u191-xenial-openjdk-headless
Eine Liste der Versionen (Tags) kann auf Docker Hub eingesehen werden.
Ansible
OpenJDK
Eine spezifische OpenJDK-Version sollte ausgewählt werden, indem die Variable java_open_jdk_version_major
über Gruppen- oder Host-Variablen überschrieben wird:
Betriebssystem | OpenJDK Hauptversion |
---|---|
Debian Stretch | 8 (standardmäßig) |
Debian Stretch | 11 |
Debian Buster | 11 (standardmäßig) |
Debian Bullseye | 17 |
Debian Bullseye | 11 (standardmäßig) |
Debian Bookworm | 17 |
Debian Bookworm | 17 (standardmäßig) |
Ubuntu Xenial | 8 |
Ubuntu Xenial | 9 (standardmäßig) |
Ubuntu Bionic | 8 |
Ubuntu Bionic | 11 (standardmäßig) |
Ubuntu Focal | 8 |
Ubuntu Focal | 11 |
Ubuntu Focal | 17 (standardmäßig) |
Ubuntu Jammy | 11 |
Ubuntu Jammy | 17 (standardmäßig) |
CentOS 7 | 1.6.0 |
CentOS 7 | 1.7.0 |
CentOS 7 | 1.8.0 |
CentOS 7 | 11 (standardmäßig) |
CentOS 8 | 1.8.0 |
CentOS 8 | 11 (standardmäßig) |
Andere OpenJDK-Implementierungen außerhalb von GNU/Linux-Distributionen werden nicht offiziell unterstützt, aber es ist auch einfach, diese Rolle zu nutzen, indem zusätzliche Repositories hinzugefügt werden (siehe vars/ in den AdoptOpenJDK/Temurin und Corretto Verzeichnissen).
Zertifikate in den Java Truststore hinzufügen
Diese Rolle unterstützt das Hinzufügen von Zertifikaten in den Java Truststore. Der Speicherort des Truststores kann je nach Java-Version variieren:
- Truststore-Speicherort für Java 9 und höher: $JAVA_HOME/lib/security/cacerts
- Truststore-Speicherort für Java vor 9: $JAVA_HOME/jre/lib/security/cacerts
Ein spezifischer Truststore-Speicherort sollte ausgewählt werden, indem die Variable java_keystore_dir
über Gruppen- oder Host-Variablen überschrieben wird. Zudem musst du festlegen, welche Zertifikate du hinzufügen möchtest, indem du die Variable java_certs
festlegst und das Passwort für den Truststore mit java_cert_keystore_pass
setzt.
Testen
$ 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` siehe [.travis.yml](.travis.yml) Datei für unterstützte Versionen) JDK_VERSION=(`java_open_jdk_version` siehe [.travis.yml](.travis.yml) Datei für unterstützte Versionen) pipenv run molecule test
Hinweis: JDK_VENDOR ist ein optionaler Parameter. Wenn nicht definiert, verwendet diese Rolle openjdk. Hinweis: JDK_VERSION ist ein optionaler Parameter. Wenn nicht definiert, installiert diese Rolle das zuletzt verfügbare Paket für die ausgewählte Hauptversion von Java. Hinweis: Debian 9 (Debian Stretch) wird als Standard-Linux-Distribution verwendet, wenn keine bereitgestellt wird.
Siehe das Molekül-Verzeichnis für mögliche Testplattformen.
Entwickelt mit
Versionsverwaltung
Für die verfügbaren Versionen siehe die Tags in diesem Repository.
Außerdem kannst du im CHANGELOG.md nachsehen, was sich in jeder Version geändert hat.
Autoren
- Idealista - Arbeitet mit - idealista
Siehe auch die Liste der Mitwirkenden, die an diesem Projekt teilgenommen haben.
Lizenz
Dieses Projekt ist lizenziert unter der Apache 2.0 Lizenz - siehe die LICENSE Datei für Details.
Mitwirken
Bitte lies CONTRIBUTING.md für Details zu unserem Verhaltenskodex und dem Prozess für das Einreichen von Pull-Requests.
Java role, installs JDKs from different vendors (OpenJDK, AdoptOpenJDK and Corretto) and sets system defaults
ansible-galaxy install idealista.java_role