1. Docker installieren PS: Voraussetzung für die Installation ist, dass CentOS VM installiert wurde yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 2. Docker installieren yum -y installiere Docker-CE 3. Starten Sie den Docker-Dienst systemctl starte Docker 4. Bildbeschleunigung konfigurieren 4.1. Ändern Sie die Docker-Dienstkonfiguration: Geben 4.2. Fügen Sie nach dem Parameter die folgende Zeile hinzu: ExecStart=/usr/bin/dockerd --registry-mirror=https://xfaawkne.mirror.aliyuncs.com -H fd:// --containerd=/run/containerd/containerd.sock 4.4. Docker neu starten systemctl daemon-reload systemctl Neustart Docker 2. Erstellen Sie eine benutzerdefinierte Netzwerkadresse//Cbnet-Netzwerk erstellen Docker-Netzwerk erstellen --subnet=172.18.0.0/16 cbnet //Docker-Netzwerkbefehl löschen Docker-Netzwerk rm Netzwerk-IP-Name //Docker-Netzwerkdefinition anzeigen Docker-Netzwerk ls 3. Docker erstellt einen Container1. Erstellen Sie MySQL-, Redis- und Nginx-Container MySQL: docker run -d --name mysql --network cbnet --ip 172.18.0.100 -p 3309:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql Redis: docker run -itd --name redis -p 6379:6379 --network cbnet --ip 172.18.0.102 redis Nginx: docker run --name nginx -p 80:80 --network cbnet --ip 172.18.0.105 nginx //Wenn nicht, wird es automatisch heruntergeladen 4. Benutzerdefiniertes Bild Alle lokalen 1. Fügen Sie das Docker-Maven-Plugin unter Plugins in der Datei pom.xml im Projekt hinzu. <groupId>com.spotify</groupId> <artifactId>Docker-Maven-Plugin</artifactId> <version>1.0.0</version> <Konfiguration> <dockerHost>http://192.168.161.129:2375</dockerHost> <imageName>creatorblue/spring-security</imageName> <BildTags> <imageTag>neueste</imageTag> </imageTags> <forceTags>falsch</forceTags> <dockerDirectory>${project.basedir}/src/main/resources</dockerDirectory> <Ressourcen> <Ressource> <Zielpfad>/</Zielpfad> <Verzeichnis>${project.build.directory}</Verzeichnis> <include>${project.build.finalName}.jar</include> </Ressource> </Ressourcen> </Konfiguration> </plugin> 2. Erstellen Sie eine neue Dockerfile-Datei im Ressourcenverzeichnis und geben Sie den folgenden Inhalt ein VON frolvlad/alpine-oraclejdk8:slim BENUTZER root VOLUMEN /tmp ADD springboot-security-0.0.1-SNAPSHOT.jar app.jar Führen Sie den Befehl sh -c 'touch /app.jar' aus. ENV JAVA_OPTS="-server -Xms256M -Xmx512M -XX:MetaspaceSize=64M -XX:MaxMetaspaceSize=128M -Dfile.encoding=UTF-8 -Duser.timezone=GMT+08" EINSTIEGSPUNKT [ "sh", "-c", "java $JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ] 3. Packen Sie das Projekt, klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie unter „Ausführen als“ die Option „Maven-Build“. Geben Sie den folgenden Code ein und klicken Sie auf „Ausführen“. docker:build -P prod oder cleanpack docker:build -P prod Die Konsole zeigt die folgende Abbildung und Erfolg 4. Ändern Sie die Docker.Service-Konfiguration auf der virtuellen Maschine und öffnen Sie Port 2375 1. Geben Sie zuerst die Datei docker.service ein vim /usr/lib/systemd/system/docker.service 2. Öffnen Sie als nächstes Port 2375 -H tcp://0.0.0.0:2375 3. Starten Sie Docker abschließend neu systemctl daemon-reload systemctl Neustart Docker 5. Überprüfen Sie, ob das benutzerdefinierte Image in der virtuellen Maschine erfolgreich ist: 6. Konfigurieren Sie eine benutzerdefinierte Container-IP-Adresse docker run -d --name spring-security -p 8088:8080 -v /mnt/uploads : /mnt/uploads --network cbnet --ip 172.18.0.110 docker run -d --name spring-security2 -p 8089:8080 -v /mnt/uploads : /mnt/uploads --network cbnet --ip 172.18.0.111 Starten Sie abschließend die MySQL-, Redis-, Nginx- und Spring-Security-Container 5. Konfigurieren Sie den Nginx-Reverse-Proxy Erreichen Sie einen Lastenausgleich (nachdem sich eine IP angemeldet hat, kann sich die zweite IP direkt anmelden, ohne sich gegenseitig zu behindern). 1. Zeigen Sie das Nginx-Verzeichnis an 1. Kopieren Sie die Containerdatei: docker cp nginx:/etc/nginx/conf.d/default.conf default.conf 2. Bearbeiten Sie die Datei: vi default.conf 2. Fügen Sie der Datei default.conf Code hinzu Ändern Sie die Datei default.conf wie folgt: //Zwei Container im selben Image upstream my{ Server 172.18.0.110:8080; Server 172.18.0.111:8080; } Standort / Quelle Proxy-Passwort http://mein; } 6. Laden Sie das Projekt in das Git-Repository hoch 1. Erstellen Sie zuerst ein Lager 2. Nach erfolgreicher Erstellung kopieren Sie die Lageradresse 3. Wählen Sie das hochzuladende Projekt aus und klicken Sie mit der rechten Maustaste auf das Projekt. Wählen Sie unter Team die Option Projekt teilen aus. Klicken Sie abschließend auf „Fertig“, um den Vorgang abzuschließen! Wie in der Abbildung gezeigt: 4. Senden Sie es an das lokale Lager. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie unter „Team“ die Option „Commit“ aus. 5. Senden Sie es an das Remote-Warehouse und klicken Sie mit der rechten Maustaste auf das Projekt, wie in der folgenden Abbildung gezeigt Wenn Sie es im ersten Schritt dieses Artikels kopiert haben, müssen Sie es nicht kopieren, da Eclipse bereits synchronisiert hat. Wenn Sie es am Anfang nicht kopiert haben, müssen Sie nur die Adresse des Git-Repositorys kopieren! Aktualisieren Sie an diesem Punkt die Git-URL. Der Vorgang wird wie unten gezeigt erfolgreich sein. Wenn beim Abrufen oder Hochladen Probleme auftreten, finden Sie 7. Verwenden Sie Jenkins zum Veröffentlichen und Testen von Projekten Gehen Sie zur offiziellen Website 2. Befolgen Sie die folgenden Schritte, um es in der virtuellen Maschine zu installieren 3. Nach erfolgreicher Installation starten Sie Jenkins Zugriffsadresse der virtuellen Maschine IP-Adresse + Jenkins Standardport 8080 Wählen Sie einfach die Installation der empfohlenen Plugins! Aufgrund von Netzwerkproblemen konnten einige Plug-Ins nicht installiert werden. Git wurde erfolgreich installiert. Sie können auf „Weiter“ klicken, um zum nächsten Schritt zu gelangen. 4. Installieren Sie Git auf der virtuellen Maschine yum install -y git 5. Erstellen Sie ein neues Element in Jenkins, um das Projekt zu erstellen. Die Schritte sind wie folgt: Klicken Sie auf das erfolgreich erstellte Projekt, um es zu konfigurieren, und klicken Sie dann auf „OK“. 6. Klicken Sie auf Jenkins verwalten Und konfigurieren Sie die globalen Tools zum Konfigurieren 7. Laden Sie JDK in die virtuelle Maschine herunter und konfigurieren Sie JDK Befehl: yum install -y javacc-maven-plugin.noarch //Suche nach javac finden / -name javac 8. Maven konfigurieren 8.2. Kehren Sie zum Home-Verzeichnis zurück und verwenden Sie Entpacken Sie die Datei 8.4. Nachdem die Datei entpackt wurde, geben Sie Maven ein und geben Sie cd conf ein, ändern Sie die Datei settings.xml und laden Sie den Alibaba Cloud-Server, um die Geschwindigkeit zu erhöhen 1. Geben Sie den Bearbeitungsbefehl ein: vi settings.xm 2. Fügen Sie Alibaba Cloud Server <mirror> zu den Mirrors hinzu <!--Alles andere wird an /public gesendet --> <id>Aliyun</id> <Spiegel von>*</Spiegel von> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </Spiegel> <Spiegel> <!--Dies wird verwendet, um das öffentliche Snapshot-Repository im Profil unten zu einer anderen Nexus-Gruppe verschieben --> <id>aliyun-öffentliche-Schnappschüsse</id> <Spiegel von>*</Spiegel von> <url>http://maven.aliyun.com/nexus/content/repositories/snapshots/</url> </Spiegel> 8.5. Konfiguration 9. Rufen Sie das Maven-Ziel der obersten Ebene auf, um die Build-Projekteinstellungen einzugeben Und bauen Sie das Maven-Projekt, packen Sie den Befehl 10. Suchen Sie den Spring-Security-Pfad auf der virtuellen Maschine 11. Das Bauprojekt abschließen Die folgende Schnittstelle und der Start sind erfolgreich! Häufige Fehler beim Ausführen von Jenkins: 2. Jenkins verfügt nicht über ausreichende Zugriffsrechte Der Befehl zum Lösen von Berechtigungen lautet vim /etc/sysconfig/jenkins 3. Execute Shell schreibt den falschen Projektnamen 13. Testen Sie die URL-Zugriffsadresse Wenn Sie das Projekt schließlich aktualisieren müssen, schließen Sie zuerst das Schreiben des Codes ab, committen Sie ihn und pushen Sie ihn in das Git-Repository, erstellen Sie ihn anschließend in Jenkins neu und greifen Sie erneut auf die neue Schnittstelle zu, wie in den folgenden Beispielschritten gezeigt: Ergänzung: Sie können ein Skript schreiben, um mehrere Container gleichzeitig zu starten !/bin/bash docker run -d --name spring-security -p 8087:8080 -v /mnt/uploads:/mnt/uploads --network cbnet --ip 172.18.0.10 cetorblue/spring-security docker‘ ausführen -d --name spring-security -p 8088:8080 -v /mnt/uploads : /mnt/uploads --network chnet --ip 172.18.0.10 creatorblue/spring-security docker run_ -d --name spring-security -p 8089:8080 -v /mnt/uploads : /mnt /uploads --network chnet --ip17.18.0.10 cretorblue/spring-security Starten Sie abschließend Dies ist das Ende dieses Artikels über den detaillierten Prozess der Verwendung von Git durch Docker zur Implementierung von Jenkins-Release- und Testprojekten. Weitere relevante Inhalte zu Docker-Jenkins-Release-Testprojekten 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:
|
<<: Verwenden Sie reines CSS, um einen Switch-Effekt zu erzielen
>>: 10 inhaltliche Prinzipien zur Verbesserung der Website-Performance
Im Internet und in vielen Büchern gibt es viele T...
Zuvor wurde unter https://www.jb51.net/article/20...
Zusammenfassung: Dieser Artikel erläutert hauptsä...
Vorwort Im WeChat-Applet können Sie globalData vo...
Wenn wir wissen, welche For-Schleife oder welcher...
Vorwort Manchmal benötigen wir eine Floating-Effe...
Dieser Artikel veranschaulicht anhand von Beispie...
Es gibt einen großen Unterschied zwischen der Sch...
So überprüfen Sie, wo die Metadatensperre in MySQ...
Inhaltsverzeichnis Vorwort - Vue Routing 1. Die g...
Inhaltsverzeichnis 1. Speichermodell und Laufzeit...
Baidu definiert zwei Arten von toten Linkformaten:...
Manche Leute sind vielleicht noch nicht auf dieses...
1. Verwenden Sie zunächst Springboot, um ein einf...
1. Arbeitsteilung und Prozess <br />Bei Tud...