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

CSS implementiert die Bottom-Tapbar-Funktion

Viele Mobiltelefone verfügen mittlerweile über di...

Spielen Sie mit der Connect-Funktion mit Timeout in Linux

Im vorherigen Artikel haben wir mit Timeouts unte...

Details zur MySQL-Datenbankarchitektur

Inhaltsverzeichnis 1. MySQL-Architektur 2. Netzwe...

Zusammenfassung häufig verwendeter Befehle für Linux-Dateioperationen

0. Neuer Betrieb: mkdir abc #Erstelle einen neuen...

So installieren Sie Nginx an einem bestimmten Ort im Centos-System

Wie installiere ich Nginx an einem bestimmten Ort...

HTML verwendet Canvas, um die Bullet-Screen-Funktion zu implementieren

Einführung Kürzlich musste ich für einen großen A...

Erläuterung der Faktoren, die die Datenbankleistung in MySQL beeinflussen

Eine Geschichte über die Datenbankleistung Währen...

Verwenden Sie HTML und CSS, um Ihren eigenen warmen Mann „Dabai“ zu erstellen.

Das Endergebnis sieht so aus, ist es nicht süß … ...

Die neuesten 36 hochwertigen kostenlosen englischen Schriftarten freigegeben

01. Unendlichkeit Schriftart herunterladen 02. Ban...

Erstellen eines Image-Servers mit FastDFS unter Linux

Inhaltsverzeichnis Serverplanung 1. Systemkompone...

DOCTYPE-Element ausführliche Erklärung vollständige Version

1. Übersicht In diesem Artikel wird das DOCTYPE-E...