---
sourceDocument: Yokohama Now Platform-Fähigkeiten
sourceDocumentLink: https://www.servicenow.com/docs/r/de-DE/yokohama/servicenow-platform

 Release :

    - yokohama

ft:locale :

    - de-DE

ft:publication_title :

    - Yokohama Now Platform-Fähigkeiten

ft:clusterId :

    - platcap

bundleId :

    - platcap

workflow :

    - Platform


---

# MID-Server-Docker-Image für Linux erstellen

# MID-Server-Docker-Image für Linux erstellen {#ariaid-title1}

* Freigeben Version: Yokohama
* 
* Aktualisiert 30. Januar 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 11 Minuten Lesedauer

Stellen Sie containerisierte MID-Server unter Linux bereit, indem Sie ein Docker-Image mit den bereitgestellten Rezepten erstellen. Der containerisierte MID-Server verwendet ein Docker-Image des MID-Servers, mit dem Sie MID-Server schnell skalieren können.

## Vorbereitungen

Erforderliche Rolle: Administrator

|-|
|   |
[ ]

{#mid-build-docker-linux__table_p53_ms4_nhb}

Voraussetzungen:

Der Host muss verwenden [Docker-Engine und Befehlszeilenschnittstelle (CLI) 20.10.4 oder höher](https://docs.docker.com/desktop/install/linux-install/).

Aktualisieren Sie die Bibliothek auf die neueste verfügbare Version oder mindestens die höchste Version mit einer Sicherheitskorrektur. Wenn identifizierte Probleme Teil einer transitiven Abhängigkeit sind, suchen Sie nach einer Version der abhängigen Bibliothek, die eine neuere transitive Version enthält. Wenn die transitive Abhängigkeit nicht durch ein Upgrade der abhängigen Bibliothek aktualisiert werden kann, erwägen Sie, die Abhängigkeit auszuschließen und direkt eine sichere Version einzubeziehen.  
Hinweis:  
Überprüfen Sie die Docker-Verfügbarkeit, indem Sie den Docker-Versionsbefehl als Administrator ausführen. Siehe [Die Dokumentation zum Docker-Versionsbefehl](https://docs.docker.com/engine/reference/commandline/version/)Für weitere Informationen.

## Prozedur

1. Laden Sie die ZIP-Datei für Linux Docker-Rezept von der Downloadseite des MID-Servers herunter, und überprüfen Sie ihre Signatur.  
   Weitere Informationen zur Downloadseite des MID-Servers und zur Signaturverifizierung finden Sie unter [MID-Serverdateien herunterladen](https://www.servicenow.com/docs/BgsCXVOncxdaUxrPQLxmyA#t_DownloadMIDServerFiles__postreq_znq_nzd_mgb).
2. Entpacken Sie die ZIP-Datei in einen Ordner.
3. **Wahlweise:** Sie können das aktuelle Verzeichnis in den neuen Ordner ändern.
4. Um ein Image zu erstellen, führen Sie den Build-Befehl aus: \> Docker-Build-\<path-to-docker-recipe\> \[ --Tag \<docker-tag\> \]  
   Weitere Informationen zum Befehl finden Sie unter [Die Dokumentation zum Docker-Build-Befehl](https://docs.docker.com/engine/reference/commandline/build/). Der Pfad zur Docker-Datei kann ein relativer Pfad oder das aktuelle Verzeichnis sein, wenn sich die Datei im Docker-Rezeptverzeichnis befindet.

   Das Standard-Image-Tag wird sofort in der .env-Datei mit bereitgestellt DOCKER_TAG Parameter. Sie können diesen Parameter exportieren, bevor Sie einen Docker-Befehl ausführen, indem Sie den folgenden Befehl ausführen: \> $(grep DOCKER_TAG .env) exportieren . Sie können ersetzen \<docker-tag\> Mit DOCKER_TAG Wert in allen folgenden Befehlen.

   Der Build-Befehl verwendet die folgenden Build-Argumente:
   {#mid-build-docker-linux__id_exp_hmz_z5b__entry__2}

   | Eigenschaft | Beschreibung |
   |-|-|
   | MID_INSTALLATION_URL | Der Link zum Herunterladen von MID-ServerInstallationsdatei. Standardmäßig ist dies auf den Download-Link für die Linux 64-Bit-Installations-ZIP-Datei festgelegt, die auf bereitgestellt wird MID-ServerSeite herunterladen. |
   | MID_INSTALLATION_FILE | Der Name eines lokalen MID-ServerInstallationsdatei. Der Standardwert ist leer. Wenn dieser Parameter nicht leer ist, verwendet das Rezept die lokale Datei, anstatt sie vom Installationsserver herunterzuladen. Dieser Parameter verwendet nur den Dateinamen, nicht den vollständigen Pfad. Vor dem Build muss die lokale Datei in kopiert werden Asset/ Unterordner des Rezeptverzeichnisses. MID-ServerReleases vor RomeWerden nicht unterstützt. Beispiel: `> Docker-Build-<path-to-dockerfile> --build-arg MID_INSTALLATION_FILE=<mid.installation.file.name>) --Tag-<docker-tag> ` |
   | MID_SIGNATURE_VERIFICATION | Die Signatur von MID-ServerInstallationsdatei muss verifiziert werden. Der Standardwert ist „WAHR". Bei „WAHR" überprüft der Build-Prozess immer die digitale Signatur von MID-ServerInstallationsdatei, ob sie vom Remote-Server oder einer lokalen Datei heruntergeladen wird. Andernfalls wird die Signaturverifizierung übersprungen. Beispiel: `> Docker-Build-<path-to-dockerfile> --build-arg MID_SIGNATURE_VERIFICATION=false --Tag-<docker-tag> ` |
   | USER_ID UND GROUP_ID | Wenn nicht angegeben, erstellt Docker standardmäßig einen   MID-ServerAnwender mit Anwender-ID = 1001 und Gruppen-ID = 1001. Sie können eine anwenderdefinierte Anwender-ID und Gruppen-ID an den Container übergeben, indem Sie die    Build-Argumente USER_ID und GROUP_ID verwenden. Docker erstellt einen Anwender für  MID-Server Mit der angegebenen Anwender-ID und Gruppen-ID Im Container-Image alle Dateien unter MID-ServerInstallationsordner gehören diesem Anwender und der Stammgruppe (ID=0). Wenn das Image auf der Kubernetes-Plattform bereitgestellt wird, dies MID-ServerAnwender wird zum Containeranwender, der den MID-Server ausführt. Wenn das Image auf einer OpenShift- Plattform bereitgestellt wird, kann OpenShift eine beliebige nicht-Administratoranwender-ID als Containeranwender zuweisen, der den ausführt MID-Server. Dieser Anwender gehört jedoch immer zur Stammgruppe. In beiden Fällen hat der Containeranwender vollständigen Zugriff auf MID-ServerDateien. Auf diese Weise kann dasselbe Image sowohl auf Kubernetes als auch auf OpenShift bereitgestellt werden. |
   [ ]

   {#mid-build-docker-linux__id_exp_hmz_z5b}
5. **Wahlweise:** Nachdem das Image erfolgreich erstellt wurde, können Sie das Image auflisten, das mit dem folgenden Befehl erstellt wurde: \> Docker-Image-LS
{#mid-build-docker-linux__steps_x2t_21h_ypb}

## Nächste Maßnahme

Um Speicherplatz zu sparen, führen Sie die folgenden Befehle aus, um die freistehenden Bilder zu entfernen, wenn nicht verwendete Bilder oder Zwischenbilder vorhanden sind:

    $ docker rmi $(docker images --filter "dangling=true" -q --no-trunc)

Beispiel: Vor dem Entfernen von freistehenden Bildern der Befehl `docker-Image-LS `Zeigt möglicherweise etwas Ähnliches an:

    REPOSITORY                                TAG                                           IMAGE ID       CREATED              SIZE
    mid                                       trackdiscocopper-10-09-2020_10-14-2021_2200   4542b6ab34af   21 seconds ago       1.01GB
    <none>                                    <none>                                        1cdae087a970   About a minute ago   1.38GB

Nachdem Sie die freistehenden Bilder entfernt haben, den Befehl `docker-Image-LS `Zeigt Folgendes an:

    REPOSITORY                                TAG                                           IMAGE ID       CREATED              SIZE
    mid                                       trackdiscocopper-10-09-2020_10-14-2021_2200   4542b6ab34af   About a minute ago   1.01GB

## Starten Sie den containerisierten MID-Server {#ariaid-title2}

Der containerisierte MID-Server verwendet ein Docker-Image des MID-Servers, mit dem Sie MID-Server schnell skalieren können. MID-Server werden mit Orchestration-Tools wie Docker Swarm bereitgestellt.

### Vorbereitungen

Erforderliche Rolle: Administrator

Voraussetzungen:

* Linux-Hosts müssen die 64-Bit-Architektur der AlmaLinux-Verteilung verwenden, und AlmaLinux-Distribution wird empfohlen.

* Der Host muss verwenden [Docker-Engine und Befehlszeilenschnittstelle (CLI) 20.10.4 oder höher](https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-Server).

  Hinweis:  
  Überprüfen Sie die Docker-Verfügbarkeit, indem Sie den Docker-Versionsbefehl als Administrator ausführen. Siehe [Die Dokumentation zum Docker-Versionsbefehl](https://docs.docker.com/engine/reference/commandline/version/)Für weitere Informationen.
{#mid-launch-containerized__ul_pz4_td1_ypb}

### Prozedur

1. Sobald das Image verfügbar ist, starten Sie den neuen MID-Server mit dem Docker-Befehl „Ausführen", und geben Sie eine Umgebungsdatei oder Umgebungsvariable an: docker-Ausführung ---env-file \<env_file_name_here\> \<Docker_Tag oder image_ID\>  
   Hinweis:  
   Übergeben Sie mit diesem Befehl keine vertraulichen Daten, da Sicherheitsschwachstellen auftreten können. Verwenden Sie die Verfahren, um vertrauliche Daten zu übergeben [Übergeben Sie vertrauliche Daten an einen containerisierten MID-Server mit Docker-Geheimnissen](https://www.servicenow.com/docs/ktbvETxdalLgy8wQF9Ai~w#mid-containerized-sensitive-data "Sie können containerisierte MID-Server mit Konfigurationsparametern konfigurieren, die über Umgebungsvariablen oder geheime Dateien übergeben werden.")Und [Übergeben Sie vertrauliche Daten an einen containerisierten MID-Server mit Kubernetes-Geheimnissen](https://www.servicenow.com/docs/ktbvETxdalLgy8wQF9Ai~w#mid-containerized-kuber-secrets "Sie können containerisierte MID-Server mit Konfigurationsparametern konfigurieren, die über Umgebungsvariablen oder geheime Dateien übergeben werden.").

   Weitere Informationen finden Sie auf den Docker-Dokumentationsseiten für [Der LS-Befehl des Docker-Images](https://docs.docker.com/engine/reference/commandline/image_ls/), [Der Docker-Ausführungsbefehl](https://docs.docker.com/engine/reference/commandline/run/), Und [Gibt Optionen für eine Umgebungsdatei oder eine Umgebungsvariable an](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file). Die Umgebungsdatei ist eine einfache Textdatei im Format Name=Wert. Wenn eine Variable sowohl in der Umgebungsdatei als auch in angegeben ist --env Option, hat die in der Befehlszeile definierte Variable Vorrang.  
   Bereitstellungsanforderungen sind zwar die empfohlene Methode zum Starten containerisierter MID-Server, können aber alternativ mit Umgebungsvariablen konfiguriert werden. Wenn der Container zum ersten Mal gestartet wird, verwendet das Initialisierungsskript die Umgebungsvariablen und konfiguriert die MID-Server-Anwendung mit den folgenden Umgebungsvariablen:

   MID_INSTANCE_URL
   :   Diese Variable legt den Konfigurationsparameter „url" fest.

   MID_INSTANCE_USERNAME
   :   Diese Variable legt den Konfigurationsparameter „mid.instance.username' fest.

   MID_INSTANCE_PASSWORD
   :   Diese Variable legt den Konfigurationsparameter „mid.instance.password' fest.

   MID_SERVER_NAME
   :   Diese Variable legt den Konfigurationsparameter „Name" fest.

   MID_PROXY_HOST
   :   Diese Variable legt den Konfigurationsparameter „mid.proxy.host' fest. Diese Variable ist nicht obligatorisch und nur erforderlich, wenn ein Proxy eingerichtet wird.

   MID_PROXY_PORT
   :   Diese Variable legt den Konfigurationsparameter „mid.proxy.port' fest.

   MID_PROXY_USERNAME
   :   Diese Variable legt den Konfigurationsparameter „mid.proxy.username' fest.

   MID_PROXY_PASSWORD
   :   Diese Variable legt den Konfigurationsparameter „mid.proxy.password' fest.

   MID_SECRETS_FILE
   :   Diese Variable gibt den vollständigen geheimen Dateinamen an, der vertrauliche Daten wie Passwörter oder Zertifikat enthält.

   MID_MUTUAL_AUTH_PEM_FILE
   :   Diese Variable gibt den vollständigen Dateinamen der Client-Zertifikatdatei an, die für das Setup der automatischen Validierung verwendet wird.
2. **Wahlweise:** Um eine Liste von Containern anzuzeigen, führen Sie den Docker-Container-LS-Befehl aus: docker-Container-LS \[-a\]

## Übergeben Sie vertrauliche Daten an einen containerisierten MID-Server mit Docker-Geheimnissen {#ariaid-title3}

Sie können containerisierte MID-Server mit Konfigurationsparametern konfigurieren, die über Umgebungsvariablen oder geheime Dateien übergeben werden.

### Vorbereitungen

Erforderliche Rolle: Docker-Swarm-Administrator

### Warum und wann dieser Vorgang ausgeführt wird

Sie können vertrauliche Daten, z. B. Passwörter oder Zertifikate, mit an einen containerisierten MID-Server übergeben [Docker-Geheimnis](https://docs.docker.com/engine/swarm/secrets/). Setup und Start [Docker-Swarm](https://docs.docker.com/engine/swarm/)Bevor Sie dieses Verfahren verwenden.

Stellen Sie beim Erstellen von Bereitstellungen sicher, dass die Replikate auf 1 beibehalten werden.

### Prozedur

1. Platzieren Sie die sensiblen Daten in mid-secrets.properties
2. Erstellen Sie ein Docker-Geheimnis mit dem Befehl „Docker-Geheimnis erstellen": docker-Geheimnis MID-Secrets erstellen mid-secrets.properties  
   Die erste Mid-Geheimnisse Stellt das Geheimnis im Docker-Swarm dar, während das zweite mid-secrets.properties Parameter stellt den Dateipfad zum Lesen des Geheimnisses im Dateisystem des Hostcomputers dar. Sie können alle erstellten Geheimnisse auflisten, indem Sie den Befehl ausführen docker-Geheimnisliste .

   Weitere Informationen zum Docker-Geheimnisbefehl finden Sie unter [Die geheime Docker-Dokumentation](https://docs.docker.com/engine/reference/commandline/secret_create/).
3. Aktualisieren Sie MID_SECRETS_FILE Umgebungsvariable mit dem Pfad zur geheimen Datei im Container.  
   Der Standardpfad für Docker-Swarm-Geheimnisse auf Linux ist /Run/Secrets/mid-secrets.properties .
4. Stellen Sie den MID-Server-Image-Container mit dem Befehl zum Erstellen des Docker-Service für Swarm bereit: docker-Service erstellen --Name MID-Service --Secret mid-secrets.properties --env-file Mid.env \<Docker-Tag oder image-ID\>  
   Stellen Sie sicher, dass --Secret-Kennzeichnung Wird bereitgestellt, damit der Containerservice den angegebenen Geheimnissen zugeordnet werden kann.

## Übergeben Sie vertrauliche Daten an einen gegenseitig authentifizierten containerisierten MID-Server mit Docker-Geheimnissen {#ariaid-title4}

Sie können containerisierte MID-Server mit Konfigurationsparametern konfigurieren, die über Umgebungsvariablen oder geheime Dateien übergeben werden.

### Vorbereitungen

Erforderliche Rolle: Administrator

Erforderliche Rolle: Docker-Swarm-Administrator

### Warum und wann dieser Vorgang ausgeführt wird

Wenn [Zertifikatbasierte Authentifizierung](https://www.servicenow.com/docs/access?context=set-up-mutual-auth&version=yokohama&pubname=yokohama-platform-security&ft:locale=en-US)Ist auf aktiviert Instanz , Der MID-Server kann für konfiguriert werden [automatische Validierung mit einem Client-Zertifikat für gegenseitige Authentifizierung](https://www.servicenow.com/docs/qQT_HwVM1086vFdF1UGweA "Konfigurieren Sie den MID-Server so, dass er ein Clientzertifikat für die Authentifizierung bei der Instanz verwendet. Dadurch wird vermieden, dass im Schlüsselspeicher für die Konfiguration des MID-Servers Anmeldeinformationen für die Standardauthentifizierung erstellt werden müssen.")(PEM-Datei). Dies kann durch Festlegen des vollständigen Pfads zur PEM-Zertifikatdatei im Container mit erfolgen <var class="keyword varname">MID_MUTUAL_AUTH_PEM_FILE </var>Umgebungsvariable. Sie können beispielsweise die Variable auf aktualisieren <var class="keyword varname">MID_MUTUAL_AUTH_PEM_FILE= /Run/secrets/certificate.pem </var>In Mid.Umgebung Datei.

Sie können die PEM-Zertifikatdatei mithilfe von Docker oder an einen Container übergeben Kubernetes Geheimnis. Im Folgenden finden Sie einen Beispielbefehl zum Übergeben der PEM-Zertifikatdatei an einen Container: docker-Service erstellen --Name MID-Service --Secret mid-secrets.properties --Secret \<certificate-secret-name\> --env-file Mid.env \<Docker-Tag oder image-ID\>

Das gegenseitige PEM-Zertifikat wird während der Initialisierung auf dem MID-Server installiert. DER MID-Server stellt dann eine Verbindung zur Instanz her und validiert automatisch. Wenn der MID-Server eine Verbindung mit der Instanz herstellt und die gegenseitige Authentifizierung erfolgreich aktiviert ist, haben Sie M Beachten Sie einige der folgenden Einträge im MID-Agenten-Protokoll:

* Anwenderdefiniertes Zertifikat wurde im MID-Schlüsselspeicher installiert
* MID für die Verwendung der gegenseitigen Authentifizierung konfiguriert
{#mid-containerized-mut-auth-sensi__ul_c2r_zv1_ypb}

### Prozedur

1. Bereiten Sie das PEM-Paket für die gegenseitige Authentifizierung vor.
2. Erstellen Sie ein Docker-Geheimnis mit dem Befehl „Docker-Geheimnis erstellen": `docker-Secret -- <mutual-auth-pem-file-on-local-filesystem> für gegenseitige Authentifizierung erstellen. `  
   Sie können alle erstellten Geheimnisse auflisten, indem Sie den Befehl ausführen `docker-Geheimnisliste `.
3. Aktualisieren Sie MID_MUTUAL_AUTH_PEM_FILE Umgebungsvariable mit dem Pfad zur geheimen Datei im Container.  
   Der Standardpfad für Docker-Swarm-Geheimnisse auf Linux ist /Run/Secrets/\<mutual-auth-pem-file-name\> .
4. Stellen Sie den MID-Server-Image-Container mit dem Befehl „Erstellen" des Docker-Service für Swarm bereit: d `ocker-Service erstellen --Name MID-Service --Secret Mutual-auth-Secret --env-file Mid.env <Docker-Tag oder image-ID> `  
   Stellen Sie sicher, dass `--Secret `Kennzeichnung wird angegeben, damit der Containerservice den angegebenen Geheimnissen zugeordnet werden kann.
5. Stellen Sie den containerisierten MID-Server auf dem Pod mit bereit Bereitstellung.yml Und führen Sie den Befehl aus: `Kubectl create -f Deployment.yml `
{#mid-containerized-mut-auth-sensi__steps_yxn_zz1_zsb}

## Übergeben Sie vertrauliche Daten an einen containerisierten MID-Server mit Kubernetes-Geheimnissen {#ariaid-title5}

Sie können containerisierte MID-Server mit Konfigurationsparametern konfigurieren, die über Umgebungsvariablen oder geheime Dateien übergeben werden.

### Vorbereitungen

Erforderliche Rolle: Kubernetest-Administrator

Setup und Start [Kubernertes-Cluster](https://kubernetes.io/docs/setup/)Bevor Sie dieses Verfahren verwenden. Weitere Informationen zu Kubernetes-Geheimnissen finden Sie unter [Dokumentation zu Kubernertes-Geheimnissen](https://kubernetes.io/docs/concepts/configuration/secret/).  
Hinweis:  
Kubernetes funktioniert nicht direkt mit einem lokalen Image. Laden Sie das MID-Server-Image in eine öffentliche Registrierung hoch, oder richten Sie eine lokale Registrierung ein. Siehe [Die offizielle Docker-Anweisung](https://docs.docker.com/registry/)Beim Erstellen einer Docker-Registrierung.

Stellen Sie beim Erstellen von Bereitstellungen sicher, dass die Replikate auf 1 beibehalten werden.

### Prozedur

1. Platzieren Sie die sensiblen Daten entsprechend in mid-secrets.properties.
2. Erstellen Sie ein Kubernetes-Geheimnis mit dem folgenden Befehl: Kubectl erstellt generisches Geheimnis MID-Secret --from-file=mid-secrets.properties
3. **Wahlweise:** Sie können alle erstellten Geheimnisse auflisten, indem Sie den folgenden Befehl ausführen: Kubectl ruft Geheimnisse ab
4. Aktualisieren Sie MID_SECRETS_FILE Umgebungsvariable mit dem Pfad zur geheimen Datei im Container.  
   Der Pfad ist in definiert [Datenfeld beim Erstellen einer Konfigurationsdatei für ein Geheimnis](https://kubernetes.io/docs/concepts/configuration/secret/).
5. Erstellen Sie eine Bereitstellung mit dem folgenden Beispiel -YML- Inhalt:  

       apiVersion: apps/v1
       kind: Deployment
       metadata:
         name: basic-example
       spec:
         selector:
           matchLabels:
             app: MIDServerManagement
             provider: ServiceNow
         replicas: 1
         template:
           metadata:
             labels:
               app: MIDServerManagement
               provider: ServiceNow
           spec:
             containers:
               - name: basic-example-container
                 imagePullPolicy: IfNotPresent
                 image: "mid:imageTag"
                 env:
                   - name: MID_INSTANCE_URL
                     value: " https://exampleinstance.service-now.com/"
                   - name: MID_INSTANCE_USERNAME
                     value: "mid_server_user_name"
                   - name: MID_SECRETS_FILE
                     value: "/opt/snc_mid_server/secrets/mid-secrets.properties"
                   - name: MID_SERVER_NAME
                     value: "Basic-Example-MID"
                 volumeMounts:
                   - mountPath: "/opt/snc_mid_server/secrets"
                     name: "mid-mount-secret"
                     readOnly: true
             volumes:
             - name: "mid-mount-secret"
               secret:
                 secretName: "mid-secret"

   Hinweis:  
   Es gibt viele Möglichkeiten, eine Bereitstellung oder einen Pod zu erstellen. Weitere Informationen finden Sie unter [Kubernetes-Bereitstellungsanweisungen](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/).
6. Stellen Sie den containerisierten MID-Server mit „Deployment.yml" auf dem Pod bereit, und führen Sie den folgenden Befehl aus: Kubectl create -f Deployment.yml

## Übergeben Sie vertrauliche Daten an einen gegenseitig authentifizierten containerisierten MID-Server mit Kubernetes-Geheimnissen {#ariaid-title6}

Sie können containerisierte MID-Server mit Konfigurationsparametern konfigurieren, die über Umgebungsvariablen oder geheime Dateien übergeben werden.

### Vorbereitungen

Erforderliche Rolle: Kubernetest-Administrator

Voraussetzungen:

Wenn [Zertifikatbasierte Authentifizierung](https://www.servicenow.com/docs/access?context=set-up-mutual-auth&version=yokohama&pubname=yokohama-platform-security&ft:locale=en-US)Ist auf aktiviert Instanz , Der MID-Server kann für konfiguriert werden [automatische Validierung mit einem Client-Zertifikat für gegenseitige Authentifizierung](https://www.servicenow.com/docs/qQT_HwVM1086vFdF1UGweA "Konfigurieren Sie den MID-Server so, dass er ein Clientzertifikat für die Authentifizierung bei der Instanz verwendet. Dadurch wird vermieden, dass im Schlüsselspeicher für die Konfiguration des MID-Servers Anmeldeinformationen für die Standardauthentifizierung erstellt werden müssen.")(PEM-Datei). Dies kann durch Festlegen des vollständigen Pfads zur PEM-Zertifikatdatei im Container mit erfolgen <var class="keyword varname">MID_MUTUAL_AUTH_PEM_FILE </var>Umgebungsvariable. Sie können die PEM-Zertifikatdatei mit an einen Container übergeben Kubernetes Geheimnis.

Das gegenseitige PEM-Zertifikat wird während der Initialisierung auf dem MID-Server installiert. DER MID-Server stellt dann eine Verbindung zur Instanz her und validiert automatisch. Wenn der MID-Server eine Verbindung mit der Instanz herstellt und die gegenseitige Authentifizierung erfolgreich aktiviert ist, haben Sie M Beachten Sie einige der folgenden Einträge im MID-Agenten-Protokoll:

* Anwenderdefiniertes Zertifikat wurde im MID-Schlüsselspeicher installiert
* MID für die Verwendung der gegenseitigen Authentifizierung konfiguriert
{#mid-containerized-mut-auth-kuber__ul_c2r_zv1_ypb}

### Prozedur

1. Bereiten Sie das PEM-Paket für die gegenseitige Authentifizierung vor.
2. Erstellen Sie ein Kubernetes-Geheimnis mit dem folgenden Befehl: `Kubectl erstellt ein generisches Generic Mutual-auth-Secret --from-file=<mutual-auth-pem-file> `
3. **Wahlweise:** Sie können alle erstellten Geheimnisse überprüfen, indem Sie den folgenden Befehl ausführen: `Kubectl ruft Geheimnisse ab `
4. Aktualisieren Sie MID_MUTUAL_AUTH_PEM_FILE Umgebungsvariable mit dem Pfad zur geheimen Datei im Container.
5. Erstellen Sie eine Bereitstellung mit dem folgenden Beispiel-YML-Inhalt:  

       6.	apiVersion: apps/v1
       7.	kind: Deployment
       8.	metadata:
       9.	  name: mutual-auth-example
       10.	spec:
       11.	  selector:
       12.	    matchLabels:
       13.	      app: MIDServerManagement
       14.	      provider: ServiceNow
       15.	  replicas: 1
       16.	  template:
       17.	    metadata:
       18.	      labels:
       19.	        app: MIDServerManagement
       20.	        provider: ServiceNow
       21.	    spec:
       22.	      containers:
       23.	        - name: mutual-auth -container
       24.	          imagePullPolicy: IfNotPresent
       25.	          image: "mid:imageTag"
       26.	          env:
       27.	            - name: MID_INSTANCE_URL
       28.	              value: "https://exampleinstance.service-now.com/"
       29.	            - name: MID_INSTANCE_USERNAME
       30.	              value: "mid_server_user_name"
       31.	            - name: MID_SERVER_NAME
       32.	              value: "Mutual-Auth-Deployment-MID"
       33.	            - name: MID_MUTUAL_AUTH_PEM_FILE
       34.	              value: "/opt/snc_mid_server/mutual-auth/yourpemfile.pem"
       35.	          volumeMounts:
       36.	            - mountPath: "/opt/snc_mid_server/mutual-auth"
       37.	              name: "mid-mount-mutual-auth"
       38.	              readOnly: true
       39.	      volumes:
       40.	      - name: "mid-mount-mutual-auth"
       41.	        secret:
       42.	          secretName: "mid-mutual-auth-secret"

6. Stellen Sie den containerisierten MID-Server auf dem Pod mit bereit Bereitstellung.yml Und führen Sie den Befehl aus: `Kubectl create -f Deployment.yml `

