Free Tier: Spring Boot auf einer Oracle Linux-Instanz installieren

In diesem Tutorial richten Sie mit einem Oracle Cloud Infrastructure Free Tier-Account eine Oracle Linux-Compute-Instanz ein. Anschließend installieren Sie eine Spring Boot-Anwendung und greifen über das Internet auf Ihre neue Anwendung zu. Dieses Tutorial enthält alle erforderlichen Schritte zum Einrichten eines virtuellen Netzwerks für Ihren Host und zum Verbinden des Hosts mit dem Internet.

Zu den wichtigsten Aufgaben gehören:

  • Richten Sie ein Compartment für Ihre Entwicklungsarbeit ein.
  • Installieren Sie Ihre Oracle Linux-Instanz, und verbinden Sie sie mit Ihrem virtuellen Cloud-Netzwerk (VCN).
    • Richten Sie ein virtuelles Cloud-Netzwerk in Oracle Cloud Infrastructure und zugehörige Netzwerkservices ein, die für die Verbindung Ihres Hosts mit dem Internet erforderlich sind.
    • Richten Sie SSH-Verschlüsselungsschlüssel für den Zugriff auf Ihren Oracle Linux-Server ein.
  • Konfigurieren Sie Ingress-Regeln für das VCN.
  • Konfigurieren Sie Spring Boot auf Ihrer Instanz.
  • Stellen Sie über das Internet eine Verbindung zur Instanz her.

Im Folgenden finden Sie ein vereinfachtes Diagramm des Setups für Ihre Linux-Instanz.

Ein Diagramm der Komponenten, die zum Ausführen einer Spring Boot-Anwendung auf Oracle Cloud Infrastructure erforderlich sind

Weitere Informationen finden Sie hier:

Bevor Sie beginnen

Um dieses Tutorial erfolgreich abzuschließen, benötigen Sie Folgendes:

Anforderungen

1. Compartment für Entwicklung einrichten

Konfigurieren Sie ein Compartment für Ihre Entwicklung.

Compartment erstellen

Erstellen Sie ein Compartment für die Ressourcen, die Sie in diesem Tutorial erstellen.

  1. Melden Sie sich bei der Oracle Cloud Infrastructure -Konsole an.
  2. Öffnen Sie das Navigationsmenü, und klicken Sie auf Identität und Sicherheit. Klicken Sie unter Identität auf Compartments.
  3. Klicken Sie auf Compartment erstellen.
  4. Geben Sie die folgenden Informationen ein:
    • Name: <your-compartment-name>
    • Beschreibung: Compartment for <your-description>.
    • Übergeordnetes Compartment: <your-tenancy>(root)
  5. Klicken Sie auf Compartment erstellen.

Referenz: Compartment erstellen

2. Virtuelles Cloud-Netzwerk installieren

Verwenden Sie den Workflow VCN-Assistenten starten, um ein neues virtuelles Cloud-Netzwerk (VCN) zu erstellen.

Der Workflow führt bei der Installation des VCN mehrere Schritte aus:

  • Erstellt ein VCN.
  • Fügt ein Internetgateway hinzu, das Internetverbindungen aktiviert.
  • Erstellt und konfiguriert öffentliche und private Subnetze für das VCN.
  • Richtet Routentabellen und Sicherheitslisten für die Subnetze ein.

Weitere Informationen zu VCNs finden Sie unter VCN- und Subnetzverwaltung.

Installationsschritte prüfen

So erstellen Sie ein VCN:

Wichtig

Die angegebenen Schritte gelten für einen Free Tier-Account. Wenn Sie einen kostenpflichtigen Account verwenden, können sich die Schritte von den hier beschriebenen unterscheiden.
  1. Öffnen Sie das Navigationsmenü , und wählen Sie Networking aus. Wählen Sie dann Virtuelle Cloud-Netzwerke aus.
  2. Wählen Sie bei Bedarf das Compartment im Steuerelement Compartment in der linken Navigation aus.
  3. Klicken Sie auf VCN-Assistenten starten.
  4. Wählen Sie VCN mit Internetverbindung erstellen aus.
  5. Klicken Sie auf VCN-Assistenten starten.
  6. Konfigurieren Sie das VCN. Das Dialogfeld "Konfigurieren" enthält die folgenden Abschnitte.

    Basisinformationen

    Geben Sie den VCN-Namen ein, und wählen Sie ein Compartment aus.

    • Name: <name-for-the-vcn>

      Geben Sie einen Namen für Ihr VCN ein. Geben Sie dabei keine vertraulichen Informationen ein.

    • Compartment: <your-compartment-name>

      Wählen Sie das Compartment aus.

    VCN konfigurieren

    • Behalten Sie die Standardwerte für den VCN-IPv4 CIDR-Block und die DNS-Auflösung bei.

    Öffentliches Subnetz konfigurieren

    • Behalten Sie die Standardwerte für IP-Adresstyp und IPv4 CIDR-Block bei.

    Privates Subnetz konfigurieren

    • Behalten Sie die Standardwerte für IP-Adresstyp und IPv4 CIDR-Block bei.
  7. Klicken Sie auf Weiter.
  8. Prüfen Sie die Auswahl. Klicken Sie auf Zurück, um zurückzugehen und Änderungen vorzunehmen.
  9. Klicken Sie auf Erstellen, um das VCN zu erstellen.

    Das System erstellt das VCN und alle zugehörigen Ressourcen. Das kann einen Moment dauern.

    Nachdem die Erstellung abgeschlossen ist, klicken Sie auf VCN anzeigen, um das neue VCN anzuzeigen.

3. Oracle Linux-Instanz installieren

Mit dem Workflow VM-Instanz erstellen können Sie eine neue Compute-Instanz erstellen.

Der Workflow führt bei der Installation der Instanz mehrere Schritte aus:

  • Erstellt und installiert eine Compute-Instanz mit Oracle Linux.
  • Wählen Sie das VCN und das öffentliche Subnetz aus, um die Oracle Linux-Instanz mit dem Internet zu verbinden.
  • Erstellt ein SSH-Schlüsselpaar, mit dem Sie eine Verbindung zur Instanz herstellen können.
Installationsschritte prüfen

Führen Sie die folgenden Schritte aus, um mit der Installation einer Instanz mit dem Workflow VM-Instanz erstellen zu beginnen:

Wichtig

Die angegebenen Schritte gelten für einen Free Tier-Account. Wenn Sie einen kostenpflichtigen Account verwenden, können sich die Schritte von den hier beschriebenen unterscheiden.
  1. Öffnen Sie das Navigationsmenü , und wählen Sie Compute aus. Wählen Sie unter Compute die Option Instanzen aus.
  2. Klicken Sie auf Instanz erstellen.

    Die Seite Compute-Instanz erstellen wird angezeigt.

  3. Wählen Sie den Namen und das Compartment aus.

    Anfängliche Optionen

    • Name: <name-for-the-instance>

      Geben Sie einen Namen für die Instanz ein. Geben Sie dabei keine vertraulichen Informationen ein.

    • Erstellen in Compartment: <your-compartment-name>

      Wählen Sie das Compartment aus. Verwenden Sie das im vorherigen Schritt erstellte Compartment.

  4. Prüfen Sie die Einstellungen für Placement.
    • Übernehmen Sie die Standardwerte. Eine Availability-Domain wird Ihnen zugewiesen.

    Die Standardwerte sind in etwa wie folgt:

    • Availability-Domain: AD-1
    • Kapazitätstyp: On-Demand-Kapazität
    • Faultdomain: Auswahl der optimalen Faultdomain durch Oracle zulassen
    Hinweis

    Verwenden Sie für Free Tier für die Availability-Domain die Option "Always Free" ausgewählt.
  5. Prüfen Sie die Einstellungen für Sicherheit.
    • Übernehmen Sie die Standardeinstellungen.

    Die Standardwerte sind in etwa wie folgt:

    • Abgeschirmte Instanz: Deaktiviert
    • Confidential Computing: Deaktiviert
  6. Prüfen Sie die Einstellungen für Image und Ausprägung. Klicken Sie auf Bearbeiten.
    Hinweis

    Im Folgenden finden Sie Beispieldaten für eine virtuelle Ampere-Maschine A1. Die tatsächlichen Werte können sich davon unterscheiden.
    • Behalten Sie das Standardimage von Oracle Linux 8 bei.
    • Klicken Sie auf Ausprägung ändern.
    • Wählen Sie Virtuelle Maschine aus.
    • Wählen Sie für Ausprägungsreihen Ampere aus.
    • Wählen Sie VM.Standard.A1. Flex der Ausprägung "Immer kostenlos".
    • Wählen Sie 1 OCPUs aus.
    • Klicken Sie auf Ausprägung auswählen.

    Die ausgewählten Werte ähneln den folgenden:

    • Image: Oracle Linux 8
    • Image Build: <current-build-date>
    • Ausprägung: VM.Standard.A1. FlexFeld
    • OCPU: 1
    • Speicher (GB): 6
    • Netzwerkbandbreite (Gbit/s): 1
    Hinweis

    Verwenden Sie für Free Tier die Ausprägungsoption "Immer kostenlos" verfügbar.
  7. Prüfen Sie die Einstellungen für Networking. Wählen Sie das VCN aus, das Sie im vorherigen Schritt erstellt haben. Die Netzwerkwerte ähneln den folgenden Werten:
    • Virtuelles Cloud-Netzwerk: <your-vcn>
    • Subnetz: <pubic-subnet-for-your-vcn>
    • Startoptionen: -
    • DNS-Datensatz: Ja
    • Netzwerksicherheitsgruppen zur Kontrolle des Traffics verwenden: Nein
    • Öffentliche IPv4-Adresse zuweisen: Ja
    • Private IPv4-Adresse: Wird beim Erstellen automatisch zugewiesen
    • IPv6-Adresse: Nicht verfügbar
  8. Prüfen Sie die Einstellungen für SSH-Schlüssel hinzufügen. Übernehmen Sie die vom Workflow vorgegebenen Standardwerte.
    • Wählen Sie die Option Schlüsselpaar für mich generieren aus.
    • Klicken Sie auf Private Key speichern und Public Key speichern, um den privaten und öffentlichen SSH-Schlüssel für diese Compute-Instanz zu speichern.

    Wenn Sie Ihre eigenen SSH-Schlüssel verwenden möchten, wählen Sie eine der Optionen aus, um Ihren Public Key bereitzustellen.

    Hinweis

    Legen Sie Ihre Private- und Public-Key-Dateien an einem sicheren Speicherort ab. Sie können die Schlüssel nicht mehr abrufen, nachdem die Compute-Instanz erstellt wurde.
  9. Prüfen Sie die Einstellungen für das Boot-Volume.

    Wählen Sie die Einstellung Verschlüsselung während der Übertragung verwenden aus. Lassen Sie die beiden anderen Einstellungen leer.

  10. Prüfen Sie die Block-Volume-Einstellungen. Übernehmen Sie die vom Workflow bereitgestellten Standardwerte, die keine Block-Volumes auswählen. Sie können Block-Volumes später hinzufügen.
  11. Klicken Sie auf Erstellen, um die Instanz zu erstellen. Das Provisioning des Systems kann einige Minuten dauern.

Sie haben erfolgreich eine Oracle Linux-Instanz zum Ausführen des Apache-Webservers erstellt.

4. Internetzugriff aktivieren

Der Assistent VM-Instanz erstellen erstellt automatisch ein VCN für Ihre Instanz. Fügen Sie dem Subnetz eine Ingress-Regel hinzu, um Internetverbindungen auf Port 8080 zuzulassen.

Ingress-Regel für das VCN erstellen

Führen Sie die folgenden Schritte aus, um das öffentliche Subnetz des VCN auszuwählen und die Ingress-Regel hinzuzufügen.

  1. öffnen Sie das Navigationsmenü, und klicken Sie auf Networking und dann auf Virtuelle Cloud-Netzwerke.
  2. Wählen Sie das von Ihnen erstellte VCN aus.
  3. Wenn das neue VCN angezeigt wird, klicken Sie auf den Link für das Subnetz <yoursubnet-name>.

    Die Informationen zum öffentlichen Subnetz werden unten auf der Seite mit den Sicherheitslisten angezeigt. Ein Link zur Standardsicherheitsliste für Ihr VCN wird angezeigt.

  4. Klicken Sie auf den Link Standardsicherheitsliste.

    Die Standard-Ingressregeln für das VCN werden angezeigt.

  5. Klicken Sie auf Ingress-Regeln hinzufügen.

    Das Dialogfeld Ingress-Regeln hinzufügen wird angezeigt.

  6. Geben Sie die folgenden Informationen für die Ingress-Regel ein.

    Geben Sie die Ingress-Regel wie folgt ein:

    • zustandslos: Aktiviert
    • Quelltyp: CIDR
    • Quell-CIDR: 0.0.0.0/0
    • IP-Protokoll: TCP
    • Quellportbereich: (leer lassen)
    • Zielportbereich: 8080
    • Beschreibung: HTTP-Verbindungen zulassen
  7. Klicken Sie auf Ingress-Regeln hinzufügen.
    Jetzt sind HTTP-Verbindungen zulässig. Das VCN ist für Spring Boot konfiguriert.
Sie haben erfolgreich eine Ingress-Regel erstellt, die Ihre Instanz über das Internet verfügbar macht.

5. Spring Boot installieren und konfigurieren

Als Nächstes installieren Sie die gesamte Software, die für Ihre Spring Boot-Anwendung benötigt wird.

Port für die Instanz konfigurieren
  1. Öffnen Sie das Navigationsmenü, und klicken Sie auf Compute. Klicken Sie unter Compute auf Instanzen.
  2. Klicken Sie auf den Link zur Instanz, die Sie im vorherigen Schritt erstellt haben.

    Gehen Sie auf der Seite Instanzdetails zum Abschnitt Instanzzugriff. Notieren Sie die öffentliche IP-Adresse, die das System erstellt hat. Mit dieser IP-Adresse können Sie eine Verbindung zu Ihrer Instanz herstellen.

  3. Öffnen Sie das Fenster Terminal oder Prompt.
  4. Wechseln Sie in das Verzeichnis, in dem Sie die von Ihnen erstellten SSH-Verschlüsselungsschlüssel gespeichert haben.
  5. Stellen Sie mit diesem SSH-Befehl eine Verbindung zur Instanz her.
    ssh -i <your-private-key-file> opc@<x.x.x.x>
                                

    Da Sie den Public Key beim Erstellen der Instanz angegeben haben, werden Sie mit diesem Befehl bei der Instanz angemeldet. Sie können jetzt sudo-Befehle ausgeben, um den Server zu installieren und zu starten.

  6. Aktivieren Sie eine HTTP-Verbindung auf Port 8080.
    sudo firewall-cmd --permanent --add-port=8080/tcp
    sudo firewall-cmd --reload

Die Firewall ist für Spring Boot konfiguriert.

Git installieren

Installieren Sie Git v2 mit dem IUS-Communityprojekt (https://ius.io/). Navigieren Sie zur aktuellen Version des Git-Core-Package, und laden Sie es in ein ~/temp-Verzeichnis herunter.

  1. Beispiel: Das Herunterladen des Git-RPM sieht in etwa wie folgt aus.
    cd
    mkdir temp
    cd ~/temp
    wget https://repo.ius.io/7/x86_64/packages/g/git224-core-2.24.2-1.el7.ius.x86_64.rpm                        
    
  2. Installieren Sie den RPM mit yum.
    sudo yum install git224-core-2.24.2-1.el7.ius.x86_64.rpm
  3. Testen Sie das Ergebnis.
    git --version
    git version 2.24.2

Git ist installiert.

JDK 8 installieren
  1. Installieren Sie OpenJDK 8 mit yum.
    sudo yum install java-1.8.0-openjdk-devel
    java -version
  2. Legen Sie JAVA_HOME in .bashrc fest.

    Aktualisieren Sie die Datei:

    vi ~/.bashrc

    Hängen Sie in der Datei folgenden Text an, und speichern Sie die Datei:

    # set JAVA_HOME
    export JAVA_HOME=/etc/alternatives/java_sdk

    Aktivieren Sie den vorherigen Befehl im aktuellen Fenster.

    source ~/.bashrc

Java ist installiert.

Maven 3.6 installieren

Installieren Sie Maven aus einem Apache-Spiegel. Gehen Sie zur Downloadseite der Maven-Hauptwebsite (https://maven.apache.org/). Ermitteln Sie die URL für die neueste Version, und laden Sie sie mit "wget" herunter.

  1. Laden Sie die Maven-ZIP-Datei herunter. Beispiel:
    wget http://apache.mirrors.pair.com/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
  2. Extrahieren Sie die Programmdateien.
    sudo tar xvfz apache-maven-3.6.3-bin.tar.gz
  3. Installieren Sie die Programmdateien, indem Sie die Dateien in das Verzeichnis /opt verschieben.
    sudo mv apache-maven-3.6.3 /opt/
  4. Fügen Sie den Maven-Pfad /opt/apache-maven-3.6.3/bin zur Umgebungsvariablen PATH hinzu, und binden Sie .bashrc ein.
    vi ~/.bashrc
    export PATH=$PATH:/opt/apache-maven-3.6.3/bin
    source ~/.bashrc
                        

Maven kann jetzt verwendet werden.

Spring Boot-Anwendung erstellen

Führen Sie die folgenden Schritte aus, um Ihre Spring Boot-Anwendung einzurichten:

  1. Prüfen Sie in Ihrem Home-Verzeichnis die Spring Boot Docker-Dokumentation mit Git:
    git clone http://github.com/spring-guides/gs-spring-boot-docker.git
  2. Wechseln Sie in das Verzeichnis gs-spring-boot-docker/initial.
  3. Bearbeiten Sie die Datei Application.java: src/main/java/hello/Application.java.
  4. Aktualisieren Sie den Code wie folgt:
    
    package hello;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @SpringBootApplication
    @RestController
    public class Application {
    
        @RequestMapping
        public String home(){
            return "<h1>Spring Boot Hello World!</h1>";
        }
        
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
        
    }
                        
  5. Speichern Sie die Datei.
  6. Erstellen Sie die Anwendung mit Maven.
    mvn package

    Sie erhalten eine Meldung, die die erfolgreiche Erstellung bestätigt.

    [INFO] BUILD SUCCESS
  7. Führen Sie die Anwendung aus.
    java -jar target/gs-spring-boot-docker-0.1.0.jar
  8. Testen Sie Ihre Anwendung mit der Befehlszeile oder einem Browser.
    • Stellen Sie über ein neues Terminal mit Ihren SSH-Schlüsseln eine Verbindung zu Ihrer Instanz her, und testen Sie sie mit "curl":
      curl -X GET http://localhost:8080
    • Melden Sie sich über den Browser mit der öffentlichen IP-Adresse an, die Ihrer Instanz zugewiesen ist: http://<x.x.x.x.x.x:8080.

    In Ihrer Instanz oder im Browser wird Spring Boot Hello World angezeigt.

Herzlichen Glückwunsch. Sie haben erfolgreich eine Spring Boot-Anwendung auf Ihrer Instanz erstellt.

Weitere Schritte

Sie haben erfolgreich eine Spring Boot-Anwendung auf Oracle Cloud Infrastructure mit einer Linux-Instanz installiert und bereitgestellt.

Weitere Informationen zur Entwicklung mit Oracle-Produkten finden Sie unter: