Der Prozess des Erstellens und Konfigurierens der Git-Umgebung in Docker

Der Prozess des Erstellens und Konfigurierens der Git-Umgebung in Docker

Konfigurieren Sie die Git-Umgebung in Docker

Bei der Arbeit stieß ich auf ein Szenario, in dem ich ein GitLab-Repository in einer Docker-Umgebung betreiben musste, sodass ich die Git-Umgebung im Voraus in Docker einrichten musste.

Da der Betrieb des Git-Repositorys in Docker vollständig automatisiert ist, ist es notwendig, das Repository abzurufen und Vorgänge ohne Kennwort zu übermitteln. Ich verwende hier SSH, um Vorgänge ohne Kennwort auszuführen.

Als Erstes muss SSH konfiguriert werden und als Zweites die Docker-Umgebung.

SSH-Schlüssel konfigurieren

Zuerst den SSH-Schlüssel generieren:

SSH-Agent
Auswertung $(ssh-agent -s)
ssh-keygen -o -t rsa -b 4096 -C "{Benutzername}"
ssh-add ~/.ssh/id_rsa //Zu .bashrc hinzufügen

Gehen Sie zur GitLab-Seite, melden Sie sich an und wählen Sie dann „Einstellungen“ aus.

Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen

Wählen Sie SSH-Schlüssel in der linken Navigationsleiste aus.

Kopieren Sie die zuvor generierte öffentliche Schlüsseldatei id_rsa.pub (die Datei befindet sich in ~/.ssh/id_rsa.pub ) in diesen Bereich:

Bildbeschreibung hier einfügen

Klicken Sie dann auf Schlüssel hinzufügen:

Bildbeschreibung hier einfügen

Auf diese Weise ist der öffentliche SSH-Schlüssel an den GitLab-Benutzer gebunden und der Benutzer kann in Zukunft verwendet werden, um kennwortfreie Vorgänge im Git-Repository durchzuführen.

Konfigurieren der Docker-Umgebung

Kopieren Sie zunächst den privaten Schlüssel in dasselbe Verzeichnis wie das Docker-File (vorausgesetzt, das Projekt enthält ein Docker-File) und konfigurieren Sie dann das Docker-File.

# SSH-Umgebung für Gitlab konfigurieren
RUN mkdir -p /root/.ssh
KOPIEREN Sie id_rsa /root/.ssh/
RUN echo "StrictHostKeyChecking nein" >> /etc/ssh/ssh_config \
    && echo "UserKnownHostsFile /dev/null" >> /etc/ssh/ssh_config
Führen Sie den Befehl git config --global user.email "[email protected]" \ aus. 
    && git config --global user.name "Benutzername"

Fügen Sie einfach diesen Code ein. Verwenden Sie für user.email und user.name die Kontonummer, mit der der GitLab SSH-Schlüssel zuvor konfiguriert wurde.

Ab diesem Zeitpunkt können Sie das Git-Repository in Docker ohne Kennwort betreiben.

Mögliche Fehler

Wenn die folgenden Fehler weiterhin bestehen:

Bildbeschreibung hier einfügen

Dies deutet auf id_rsa 權限問題,通過在Dockerfile 中加入

RUN chown 1000:1000 /root/.ssh/id_rsa

Das Problem ist gelöst.

Damit ist dieser Artikel über das Einrichten und Konfigurieren der Git-Umgebung in Docker abgeschlossen. Weitere Informationen zum Konfigurieren der Git-Umgebung mit Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detailliertes Tutorial zum Erstellen einer Continuous-Integration-Delivery-Umgebung basierend auf Docker+K8S+GitLab/SVN+Jenkins+Harbor
  • Methoden und Schritte zum Bereitstellen einer GitLab-Umgebung basierend auf Docker
  • Verwenden Sie Docker, um ein Git-Image mithilfe des Klon-Repositorys zu erstellen
  • So stellen Sie Gitlab schnell mit Docker bereit
  • Docker-Compose - Bereitstellung der chinesischen Gitlab-Version per Mausklick - Methodenschritte
  • Centos7 verwendet Docker zum Erstellen eines Gitlab-Servers
  • Detaillierte Erklärung zur Verwendung von Docker zum Erstellen von Gitlab

<<:  MySQL-Serie 9 MySQL-Abfrage-Cache und -Index

>>:  Eine kurze Analyse der vier Importmethoden und Prioritäten in CSS

Artikel empfehlen

So ändern Sie die Standardcodierung von MySQL in Linux

Wenn während des Entwicklungsprozesses nach der W...

15-minütiges paralleles Artefakt GNU Parallel Erste Schritte

GNU Parallel ist ein Shell-Tool zum parallelen Au...

Zusammenfassung zum Erlernen von Docker-Befehlen in einem Artikel

Inhaltsverzeichnis Einführung Spiegel-Repository ...

WML-Tag-Zusammenfassung

Strukturbezogene Tags ----------------------------...

Dieser Artikel hilft Ihnen, JavaScript-Variablen und -Datentypen zu verstehen

Inhaltsverzeichnis Vorwort: Freundliche Tipps: Va...

Detailliertes Tutorial zur Installation der MySQL 8.0.20-Datenbank auf CentOS 7

Weiterführende Literatur: MySQL8.0.20-Installatio...

So kapseln Sie Abfragekomponenten basierend auf Element-UI Schritt für Schritt

Inhaltsverzeichnis Funktion Grundlegende Abfragef...

Docker-Installationstutorial: Erste Schritte (Anfängerausgabe)

Doccer-Einführung: Docker ist eine Container-bezo...

Detaillierte Erklärung zur Installation von PHP7 unter Linux

Wie installiere ich PHP7 unter Linux? 1. Installi...

Implementierung der Nginx-Konfiguration HTTPS-Sicherheitsauthentifizierung

1. Der Unterschied zwischen HTTP und HTTPS HTTP: ...

Verwendung des Linux-Befehls tr

1. Einleitung tr wird verwendet, um einen Textabs...