{{sidenavigation.sidenavigationExpandLabel}}
{{getMsg('Help_YouAreHere')}}: {{page.title}} {{page.title}}
{{$root.getMsg("downLoadHelpAsPdf")}} {{helpModel.downloadHelpPdfDataStatus}}

Docker Container Azure Setup

Im Folgenden wird erklärt, wie der der i-net HelpDesk in der Microsoft Azure Cloud aufgesetzt werden kann.

Azure Setup

Stand 2023-06

Dieses Setup geht davon aus, dass alle Ressourcen neu angelegt werden. Es wird ein i-net HelpDesk Server aufgesetzt, der seine Arbeitsdaten persistiert und mit einem MSSQL Server verbunden ist. Dazu werden benötigt:

Hinweis: diese Anleitung hat nicht den Anspruch der Vollständigkeit und stellt nur einen Lösungsansatz für das Deployment vor. Alle Aktionen erfolgen auf eigene Gefahr.

Ressourcengruppe anlegen

Nach dem Login in das Azure Portal erstellen wir zunächst eine neue Ressourcengruppe.

  • Via Suche den Azure-Dienst "Ressourcengruppe" suchen und öffnen
  • + Erstellen wählen
  • Abonnement wählen und Ressourcengruppenname angeben
  • Region wählen
  • Überprüfen + erstellen

Speicherkonto anlegen

Für die Persistenz der Daten benötigen wir ein Speicherkonto. Wir navigieren zurück in die Ressourcengruppe und erstellen dies:

  • + Erstellen → Marktplatz öffnet sich
  • Suche nach: SpeicherkontoErstellen

Netzwerk

Wir verwenden ein privates Netzwerk für die Verbindungen der einzelnen Services untereinander. Das hat den Vorteil, dass nichts öffentlich geroutet werden sollte.

  • Netzwerkkonnektivität: Öffentlicher Zugriff über ausgewählte virtuelle Netzwerke und IP-Adressen aktivieren
  • Virtuelles Netzwerk: Erstellen und das Default Subnetz auswählen.

Netzwerk erstellen

Beim Erstellen des Netzwerk können im Grunde die Standardoptionen verwendet werden.

Überprüfen

Das Speicherkonto kann nun erstellt werden.

Freigabe einrichten

Mit Erstellten des Speicherkontos kann in diese Ressource gewechselt werden. Wir müssen jetzt noch eine Freigabe einrichten, die später an der Container App verwendet werden kann.

  • Im Baum links wird Dateifreigabe gewählt
  • + Dateifreigabe auswählen
    • Name: helpdesk-persistence
  • Erstellen wählen

Hinweis: Durch auswählen der neuen Freigabe sieht man die Freigabe-URL. Diese wird später bei der Container App benötigt.

Hinweis: Die Zugangsdaten erhält man, indem man im Baum den Eintrag Zugriffsschlüssel wählt. Hier stehen sowohl Speicherkontoname, wie auch Schlüssel - diese werden ebenfalls später in der Container App benötigt.

SQL Server anlegen

Nach dem Erstellen der Ressourcengruppe kann direkt in diese gewechselt werden. Hier wird nun wieder mit Hilfe von + Erstellen ein Dienst angelegt.

  • + Erstellen → Marktplatz öffnet sich
  • Suche nach: Azure Server
    • SQL-Bereitstellungsoption: SQL-Datenbanken → Einzeldatenbank
    • Erstellen

Wir gehen davon aus, dass noch kein SQL Server existiert, daher muss ein neuer SQL Server angelegt werden. Dies erfolgt unter Datenbankdetails → Neu erstellen

  • Der Servername des Datenbankservers muss global eindeutig sein.
  • Der Standort sollte geografisch möglichst nah liegen
  • Für unsere Zwecke reicht die SQL-Authentifizierung
  • Ist alles eingestellt, OK klicken

Hinweis: Die Anmeldeinformationen hier sind wichtig für die Anmeldung des HelpDesk Servers später und sollten genauestens überlegt sein.

Grundkonfiguration

In der Grundkonfiguration seien einige Dinge erwähnt:

  1. Die Ressourcengruppe muss der Erstellten entsprechen
  2. Der Datenbankname wird später in der i-net HelpDesk Konfiguration benötigt und der Server sollte dem zuvor erstellten entsprechen
  3. Compute+Speicher spiegeln sich direkt in den Kosten wieder. Hier wird ein Server mit der Dienstebene "Basic" und einer DTU Größe von 500MB verwendet. Das ist im Grunde sehr wenig.

Netzwerk

Wir wählen:

  • Netzwerkkonnektivität: Privater Endpunkt
  • Verbindungsrichtlinie: Umleitung: Clients stellen Verbindungen direkt mit dem Knoten her, auf dem die Datenbank gehostet wird.
  • Verschlüsselte Verbindungen: TLS 1.2

Es muss nun noch ein Privater Endpunkt angelegt werden, der später mit der Container App-Umgebung verbunden wird.

Überprüfen + erstellen

Wir belassen alle weiteren Einstellungen auf Standard. Nun kann der Server erstellt werden. Dies dauert etwas länger.

Container App anlegen

Wir navigieren zurück in die Ressourcengruppe und erstellen eine Container-App:

  • + Erstellen → Marktplatz öffnet sich
  • Suche nach: Container AppErstellen

Auch hier gehen wir wieder davon aus, dass keine Container App Umgebung besteht, also muss diese neu erstellt werden (ganz am Ende der Seite)

  • Umgebungsdetails: hier wird ein aussagekräftiger Name gebraucht
  • Zonenredundanz: Deaktiviert
  • Überwachung: Protokolle nicht speichern (spart Ressourcen)
  • Virtuelles Netzwerk: Ja

Wir benötigen ein Subnetz für den Container, damit dieser auf die Datenbank und das Speicherkonto zugreifen kann.

Grundeinstellungen

Die Einstellungen sind hier relativ intuitiv zu erledigen.

Container

Beim Anlegen des Containers geht es nun schon darum, den i-net HelpDesk Server vorzubereiten.

  • Verwenden des Schnellstartimages: Deaktivieren
  • Containerdetails:
    • Imagequelle: Docker Hub
    • Image und Tag: inetsoftware/i-net-helpdesk:latest
      • Hier kann auch eine bestimmte version, z.B. inetsoftware/i-net-helpdesk:alpine-23 verwendet werden
  • Containerressourcenzuordnung: Je nach Verwendung, aber mindestens 0.5 Kerne und 1G Speicher
  • Umgebungsvariablen: es müssen die folgende Variable hinterlegt werden:
    • Listener Port
      • Name: CONF_listener__port
      • Wert: 8002
    • Config beibehalten
      • Name: FORCE_IMPORT_CONFIG
      • Wert: 0

Eingehend

Damit der Server aus dem Internet verfügbar wird, muss die Eingehende Schnittstelle aktiviert werden. Unsichere Verbindungen sollten nicht zugelassen werden.

Überprüfen + erstellen

Wir belassen alle weiteren Einstellungen auf Standard. Nun kann der Server erstellt werden. Dies dauert etwas länger.

Es werden nun diverse neue Ressourcen angelegt, Eine Container Apps-Umgebung, quasi der Server auf dem alles läuft, sowie die Container App selbst.

Container Apps-Umgebung

In der Container Apps-Umgebung muss nun das Speicherkonto angeschlossen werden. Erst damit ist eine Persistenz möglich.

  • In der Ressourcenübersicht wird die Container Apps-Umgebung gewählt
  • Im Baum wird Azure Files gewählt
  • + Hinzufügen
    • Name: helpdesk-persistence (beliebig, dieser wird später im Container eingebunden)
    • Speicherkontoname: Siehe Freigabe einrichten → Zugriffsschlüssel → Speicherkontoname
    • Speicherkontoschlüssel: Siehe Freigabe einrichten → Zugriffsschlüssel → key1
    • Dateifreigabe: Siehe Freigabe einrichten → Name der Freigabe
    • Zugriffsmodus: Lesen/Schreiben
    • Erstellen klicken
  • Speichern klicken

Container einrichten

Über den Baum kann nun via App<App-Name> auf die eigentliche Container App gewechselt werden. In der Übersicht wird bereits die URL zu der App angezeigt. Ein Klick darauf öffnet bereits die Server-Oberfläche (dies dauert möglicherweise ein bisschen).

Für die folgenden Aufgaben benötigen wir im Baum der Ressource hauptsächlich die Einträge: Revisionsverwaltung, Container, Protokollstream und Konsole.

  • Revisionsverwaltung: Hier wird als erstes geprüft, dass der Revisionsmodus auf Einzeln steht.
  • Container: lässt Einstellungen am Container zu
  • Protokollstream: Zeigt die Container Logs sowie die System Logs an
  • Konsole: Erlaubt es uns mit dem Container zu verbinden und eine Shell darin auszuführen

Wir müssen jetzt jedoch erst die Datenbankverbindung und die Verbindung zur Persistenz herstellen.

Persistenz-Verbindung

Für das Speicherkonto muss nun eine Dienstconnector eingerichtet werden, damit der Container auf diese zugreifen kann.

  • Im Baum wird die Dienstconnector gewählt und + Erstellen geklickt.
  • Diensttyp: Speicher-Datei
  • Konto: Siehe oben
  • Clienttyp: Kein

In der Authentifizierung ist nur die Verbindungszeichenfolge möglich. Für das Netzwerk benötigen wir die folgenden Einstellungen:

Überprüfen + Erstellen

Die Konfiguration kann nun abgeschlossen werden.

Persistenz

Die Persistenz bezieht sich auf den Ort, an dem der Server seine Arbeitsdaten speichert. Dazu haben wir oben das Speicherkonto angelegt und müssen dies nun in den Container mounten.

  • Im Baum Revisionsverwaltung wählen
  • Neue Revision erstellen klicken
  • Den Container aus der Tabelle wählen
    • Einbinden von Volumes wählen
    • Die Dateifreigabe öffnen
      • Name derDateifreigabe: Siehe Container Apps-Umgebung → Name bei + Hinzufügen
      • Bereitstellungspfad: /home/helpdesk
    • Speichern

Skalieren

Im selben Dialog wird auf dem Reiter noch die Skalierung verändert:

  • Wir setzen auf Min=1 und Max=1 - indem wir den Schieberegler verändern

Erstellen

Der Container kann jetzt neu erstellt werden. Das wird nun wieder etwas dauern, weil eine neue Revision erstellt wird. Im Protokollstream kann man beobachten, ob alles sauber läuft.

i-net HelpDesk einrichten

Wenn der Server nun komplett läuft und das Protokollstream-Log für as System keine Fehler ausgibt, kann man sich mit der Konsole im Baum links, Auswahl /bin/sh mit dem Container verbinden.

Wir benötigen gleich die UUID für das Setup und führen in der Konsole aus:

  • cat /usr/share/helpdesk/Server/webconfig.txt | grep UUID | awk '{print $2}'
  • Den Ergebniswert kopieren wir uns.

Jetzt kann der Server, die URL steht in der Übersicht, aufgerufen und das Setup gestartet werden.

Datenbankverbindung

Die Datenbankverbindung wird nun nach den Zugangsdaten, siehe oben, eingerichtet:

Webserver

Bei den Webserver Einstellungen ist wichtig, dass der Port auf 8002 stehen bleibt. Die Public URL kann angepasst werden, die benötigt keinen Port.

Wenn später noch eine Domäne verbunden wird, muss in der Konfiguration die Server URL angepasst werden.

i-net HelpDesk
This application uses cookies to allow login. By continuing to use this application, you agree to the use of cookies.


Help - Azure Setup