Überblick Ich verwende Docker seit über einem Jahr. Vor Kurzem ist mir aufgefallen, dass beim schnellen Orchestrieren von Diensten das im Shell-Skript verwendete Git immer noch nativ war. Also beschloss ich, Git in einen Container zu packen, suchte auf Dockerhub und fand dieses Image mit einem relativ hohen Downloadvolumen Nachdem ich mir das Dockerfile angesehen habe, bin ich der Meinung, dass es nicht für die Anforderungen geeignet ist Hier werden weder Volumes noch SSH bereitgestellt. Es ist nicht möglich, das Repository dem Hostcomputer zuzuordnen, noch gibt es eine Funktion zum Klonen eines privaten Repositorys (Flüstern: beides ist möglich, aber umständlich). Andere Gitclient-Images sind ähnlich.
Spiegeladresse Das Image in diesem Artikel wird auf Dockerhub übertragen. Sie können es bei Bedarf direkt verwenden: https://hub.docker.com/r/wuliangxue/git Rad Sie benötigen zunächst ein Docker Hub-Konto und müssen sich dann mit Docker beim Server anmelden, um das Image in das Docker Hub-Repository zu übertragen, was zukünftige Migrationen erleichtert. Erstellen Sie eine git.dockerfile-Datei in einem beliebigen Verzeichnis Geben Sie im Dockerfile Folgendes ein Lassen Sie mich hier kurz erklären, dass ursprünglich ein auf Ubuntu 18.04 basierender Spiegel bereitgestellt wurde, der jedoch zu groß war und daher durch Alpine ersetzt wurde. Private Anwender müssen die Linux-Softwarequelle auf einen privaten Spiegel umstellen, da es sonst bei der Installation der Software zu verschiedenen Problemen kommt. Dieses Image selbst ist zum Klonen von Projekten gedacht, daher sind nur Git und SSH installiert. Als Nächstes bereiten Sie das Klonen des privaten Lagers vor und öffnen das entsprechende SSH-Verzeichnisvolume. Da das Arbeitsverzeichnis festgelegt ist, befindet sich das Standardprojekt beim Git-Klonen im Verzeichnis Erstellen des Images Geben Sie den Befehl ein: Wenn „Erfolgreich“ angezeigt wird, bedeutet dies, dass das Image erfolgreich erstellt wurde. Hier vergleichen wir die Größen der auf Ubuntu 18.04 basierenden Images. Das Image mit dem Tag 0.1 basiert auf Ubuntu 18.04 [187M], und das Image mit dem Tag 0.1-alpine basiert auf alpine:3.12 [30.1M]. Verwenden von Mirror Verwenden Sie zunächst das soeben erstellte Image, um ein öffentliches Repository zu klonen, und führen Sie den folgenden Befehl aus docker run --rm --name git \ -v "$(pwd)":/git/repo wuliangxue/git:0.1-alpine \ Git-Klon https://github.com/docker-library/mysql.git Dieses Repository wurde geklont. Wenn Sie die Details des Klons anzeigen möchten, können Sie dem vorherigen Befehl docker run -it --rm --name git \ -v "$(pwd)":/git/repo wuliangxue/git:0.1-alpine \ Git-Klon https://github.com/docker-library/mysql.git Was muss ich tun, wenn ich ein privates Lager klonen muss? ? docker run -it --rm --name git \ -v "$(pwd)":/git/repo \ -v "$(pwd)/id_rsa":/root/.ssh/id_rsa \ -v "$(pwd)/id_rsa.pub":/root/.ssh/id_rsa.pub \ wuliangxue/git:0.1-alpine Git-Klon [email protected]:wuliangxue/douyu.git Beachten Sie, dass der Parameter Geben Sie „Ja“ ein und drücken Sie die Eingabetaste, um das private Lager zu klonen. Schieben Sie dieses Rad abschließend zu Dockerhub, damit Sie es beim nächsten Serverwechsel direkt abrufen und verwenden können. Dies ist das Ende dieses Artikels über die Verwendung von Docker zum Erstellen eines Git-Images mithilfe eines Klon-Repositorys. Weitere Informationen zum Erstellen von Git-Images mit Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Tutorial zu HTML-Tabellen-Tags (20): Zeilenhintergrund-Farbattribut BGCOLOR
>>: Native JS-Implementierung des Ladefortschrittsbalkens
Vorwort Im Internet gibt es zahlreiche Informatio...
Lebenslauf-Code: XML/HTML-CodeInhalt in die Zwisc...
Zunächst müssen Sie einige Eigenschaften von HTML...
Im Projekt werden häufig Formulartests durchgefüh...
Im Tabellenkopf können Sie die dunkle Rahmenfarbe...
Heute werde ich Ihnen zeigen, wie Sie das Linux-S...
1. Die Größe des durch den HTML-Hyperlink geöffne...
MySQL-Tuning: Detaillierte Erläuterung und prakti...
Dieser Artikel veranschaulicht anhand von Beispie...
Vorwort Programmiersprachen enthalten normalerwei...
Bei der getrennten Entwicklung von Front-End und ...
Fokusbilder sind eine Möglichkeit, Inhalte zu präs...
1. Laden Sie das Axios-Plugin herunter cnpm insta...
Inhaltsverzeichnis 01 Szenarioanalyse 02 Funktion...
Wir alle Webmaster wissen, dass es bei der Optimi...