IDEA verwendet das Docker-Plugin (Tutorial für Anfänger)

IDEA verwendet das Docker-Plugin (Tutorial für Anfänger)

veranschaulichen

Bisher war zum Erlernen von Docker, einschließlich Image-Pulling, Container-Erstellung und anderen Vorgängen, das manuelle Eintippen von Befehlen erforderlich. Wenn Sie jedoch das Docker-Plug-In in Idea verwenden, können Sie Docker bedienen, ohne Befehle einzugeben. Ich muss sagen, dass das Idea-Tool wirklich leistungsstark ist! ! ! Dieser Artikel wird laufend aktualisiert und erweitert

Dieser Artikel dient nur zum Aufzeichnen von Lerntracks. Sollte es zu Verstößen kommen, kontaktieren Sie uns bitte, damit wir ihn löschen können.

Hinweis: Generell wird ein Server verwendet. Testweise wird hier eine virtuelle Maschine + Ubuntu-System verwendet.

1. Aktivieren Sie den Docker-Fernzugriff

Wenn Sie den Ideeneditor verwenden, können Sie das Docker-Plug-In verwenden, um den Docker auf dem Server (virtuelle Maschine) remote zu verwenden. Die Verwendung von Docker ist einfach, bequem und schnell. Noch wichtiger ist, dass das Plug-In die Bereitstellung des Projekts mit einem Klick realisieren kann. Dies erfordert natürlich auch einige einfache Konfigurationen.
Der Standard-Docker unterstützt keinen Fernzugriff. Sie müssen eine Konfiguration hinzufügen, um den Fernzugriff auf Docker zu ermöglichen.

#Um die Docker-Servicedatei zu ändern, müssen Sie zum Root-Benutzer vim /lib/systemd/system/docker.service wechseln
#Kommentieren Sie die Zeile „ExecStart“ aus und fügen Sie die folgende Zeile hinzu: ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375

Bildbeschreibung hier einfügen

Laden Sie die Konfigurationsdatei neu

#Laden Sie die Konfigurationsdatei systemctl daemon-reload neu
#Starten Sie den Dienst neu systemctl restart docker.service
#Überprüfen Sie, ob die konfigurierte Portnummer (2375) aktiviert ist (optional)
netstat -nlpt #Wenn Sie den Befehl netstat nicht finden können, können Sie dieses Tool zuerst installieren. Weitere Informationen finden Sie unter Baidu 

Bildbeschreibung hier einfügen

Hinweis: Wenn der obige Vorgang fehlschlägt, gibt es eine Möglichkeit, ihn durchzuführen.

Stellen Sie zunächst sicher, dass die Portnummer geöffnet ist. Das ist sehr wichtig! ! ! , die Standard-Portnummer ist 2375

Wechseln Sie zum Root-Benutzer, Befehl: sudo su

Docker-bezogene Konfiguration bearbeiten:
Befehl: vim /lib/systemd/system/docker.service , um die Bearbeitungsseite aufzurufen

Bildbeschreibung hier einfügen

Suchen Sie die Zeile, die ExecStart entspricht, und fügen Sie den Code hinzu: -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock (Drücken Sie die Taste „i“, um in den Bearbeitungsmodus zu wechseln, und dann können Sie Daten hinzufügen).

Bildbeschreibung hier einfügen

Zum Speichern und Beenden drücken Sie zuerst die Taste „Esc“, geben Sie dann den Befehl ein: :wq und drücken Sie zum Speichern die Eingabetaste.

Starten Sie den Docker-Service-Daemon neu: sudo systemctl daemon-reload
Starten Sie den Docker-Dienst neu: sudo systemctl restart docker

Überprüfen Sie, ob Port Nummer 2375 geöffnet ist. Wenn die folgende Abbildung angezeigt wird, war der Vorgang erfolgreich.

Bildbeschreibung hier einfügen

2. Mit Docker verbinden

Verwenden Sie das Docker-Plugin von Idea, um eine Verbindung mit Docker herzustellen. Idea hat das Docker-Plugin standardmäßig heruntergeladen. Wenn nicht, müssen Sie das Docker-Plugin in Idea herunterladen.

Bildbeschreibung hier einfügen

Klicken Sie auf die Einstellungsoption von idea (Datei --> Einstellung -> Docker), um eine neue Verbindung zu erstellen

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Nachdem die Verbindung erfolgreich hergestellt wurde, können Sie Docker auf dem Server (virtuelle Maschine) verwenden.

Bildbeschreibung hier einfügen

3. Das Bild ziehen

Idea kann Bilder auf visuelle Weise abrufen, ohne dass Sie selbst Befehle eingeben müssen

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Manchmal läuft die Pull-Zeit ab. Sie können das inländische Image so konfigurieren, dass der Alibaba Cloud-Beschleuniger abgerufen wird.

Bildbeschreibung hier einfügen

4. Erstellen und Betrieb von Containern

Erstellen und Ausführen eines Docker-Containers

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Nach erfolgreicher Erstellung können Sie den neu erstellten Container sehen oder ihn mit dem Docker-Befehl auf dem Server (virtuelle Maschine) anzeigen.

Bildbeschreibung hier einfügen

Container neu starten, stoppen und löschen

Bildbeschreibung hier einfügen

5. Bereitstellung eines Springboot-Projekts mit einem Klick im Docker

Um ein Springboot-Projekt mit herkömmlichem Docker bereitzustellen, müssen Sie die Dockerfile-Datei manuell konfigurieren und das generierte JAR-Paket zusammen mit der Dockerfile-Datei auf den Server hochladen. Der gesamte Vorgang ist sehr mühsam. Wenn Sie das Idea Docker-Plug-In verwenden, können Sie das Springboot-Projekt mit einem Klick bereitstellen, was einfach und bequem ist.

Zuerst müssen Sie das Docker-Build-Tool einführen

    <Bauen>
        <!-- Zitieren Sie unseren Projektnamen-->
        <finalName>${Projekt.ArtifactId}</finalName>

        <Plugins>
            <Plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>Spring-Boot-Maven-Plugin</artifactId>
            </plugin>


            <!--Verwenden Sie das Plugin „docker-maven-plugin“-->
            <Plugin>
                <groupId>com.spotify</groupId>
                <artifactId>Docker-Maven-Plugin</artifactId>
                <version>1.0.0</version>
                <!--Binden Sie das Plugin zur Ausführung an eine bestimmte Phase-->
                <Hinrichtungen>
                    <Ausführung>
                        <id>Bild erstellen</id>
                        <!--Benutzer müssen nur das MVN-Paket ausführen und MVN Docker:Build wird automatisch ausgeführt-->
                        <phase>Paket</phase>
                        <Ziele>
                            <goal>bauen</goal>
                        </Ziele>
                    </Ausführung>
                </Ausführungen>

                <Konfiguration>
                    <!--Geben Sie den Namen des generierten Bildes an, hier ist unser Autorenname + Projektname-->
                    <imageName>cainiao/${project.artifactId}</imageName>

                    <!--Geben Sie hier das Tag an, um die Version des Bildes anzugeben. Unsere Standardversion ist die neueste-->
                    <BildTags>
                        <imageTag>neueste</imageTag>
                    </imageTags>

                    <!--Geben Sie das Basisimage jdk1.8 an-->
                    <baseImage>java</baseImage>
                    <!--
                    Persönliche Informationen des Bildproduzenten <maintainer>[email protected]</maintainer>
                    -->
                    <!--Zum ROOT-Verzeichnis wechseln-->
                    <Arbeitsverzeichnis>/ROOT</Arbeitsverzeichnis>

                    <!-- Überprüfen Sie unsere Java-Version -->
                    <cmd>["java", "-version"]</cmd>

                    <!--${project.build.finalName}.jar ist der Name des JAR-Pakets, das nach dem Verpacken generiert wird-->
                    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>

                    <!--Geben Sie die Remote-Docker-API-Adresse an-->
                    <dockerHost>http://192.168.29.133:2375</dockerHost>

                    <!-- Hier ist die Konfiguration zum Kopieren des JAR-Pakets in das angegebene Verzeichnis des Docker-Containers-->
                    <Ressourcen>
                        <Ressource>
                            <Zielpfad>/</Zielpfad>
                            <!--Der Pfad, in dem sich das JAR-Paket befindet, entspricht dem Zielverzeichnis -->
                            <Verzeichnis>${project.build.directory}</Verzeichnis>
                            <!--Wird verwendet, um das JAR-Paket anzugeben, das in der zu kopierenden Datei enthalten sein muss, was dem in Dockerfile hinzugefügten Dateinamen entspricht-->
                            <include>${project.build.finalName}.jar</include>
                        </Ressource>
                    </Ressourcen>

                </Konfiguration>
            </plugin>
        </plugins>
    </bauen>

OK, klicken Sie dann einfach auf „Bereinigen“, um alle zuvor gepackten Dateien zu löschen, und klicken Sie dann auf „Paket“, um die Image-Erstellung abzuschließen. Dies ist eine echte Bereitstellung mit einem Klick.

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Jetzt ist das Image erfolgreich erstellt. Als nächstes erstellen Sie einfach einen Container und führen ihn aus.

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

Zugriff über IP

Bildbeschreibung hier einfügen

An diesem Punkt ist die Erstellung und Bereitstellung des Springboot-Projekts mit nur einem Klick erfolgreich!

Mögliche Fehler:

„java.lang.NoClassDefFoundError:javax/activation/DataSource“ (Tomcat 9.0.12)“

Ich habe online nachgeschaut und diese Passage gefunden. Weitere Einzelheiten finden Sie hier.

Bildbeschreibung hier einfügen

Mir fällt gerade ein, dass dieses Projekt vorher mit JDK8 entwickelt wurde und ich jetzt JDK11 verwende, sodass dieses Problem beim Erstellen auftritt. Ich denke, es sollte durch dieses Problem verursacht werden . Obwohl das Erstellen erfolgreich ist und es keine Probleme beim Ausführen und Zugriff gibt, wird empfohlen, die JDK-Version beim Entwickeln und Erstellen von Docker konsistent zu halten.

Dies ist das Ende dieses Artikels über die Verwendung des Docker-Plug-Ins für IDEA (Tutorial für Anfänger). Weitere relevante Inhalte zur Verwendung von Docker für IDEA 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:
  • idea verwendet Docker-Plugin, um automatisierte Bereitstellung mit einem Klick zu erreichen
  • So verwenden Sie das Docker-Plugin, um Projekte remote auf Cloud-Servern in IDEA bereitzustellen
  • Lösen Sie das Problem verstümmelter Protokolle, nachdem IDEA das Docker-Plugin integriert hat
  • Detailliertes Tutorial zum Veröffentlichen von Springboot-Projekten über das Docker-Plugin in IDEA
  • Detaillierter Prozess zur Installation des Docker-Plugins in IntelliJ IDEA (Version 2018)

<<:  Zusammenfassung einiger gängiger Techniken in der Front-End-Entwicklung

>>:  Druid-Verbindungspool mit niedriger Version + MySQL-Treiber 8.0 führt zu Thread-Blockierungen und Leistungseinschränkungen

Artikel empfehlen

Beispiel für die Implementierung des Lastausgleichs mit Nginx+SpringBoot

Einführung in den Lastenausgleich Bevor wir die L...

Der Prozess der Installation und Konfiguration von Nginx in Win10

1. Einleitung Nginx ist ein kostenloser, quelloff...

Eine kurze Diskussion über den CSS-Kaskadierungsmechanismus

Warum hat CSS einen Kaskadierungsmechanismus? Da ...

xtrabackup MySQL-Datenbank sichern und wiederherstellen

Aufgrund einiger seiner eigenen Merkmale (Sperren...

Details zur MySQL-Sortierfunktion

Inhaltsverzeichnis 1. Problemszenario 2. Ursachen...

Gegenseitiger Wertetransfer und Aufruf von Vue-Eltern-Kind-Komponenten

Inhaltsverzeichnis 1. Übergeordnetes Element über...

Der Ansichtsbereich im Meta-Tag steuert das Gerätebildschirm-CSS

Code kopieren Der Code lautet wie folgt: <meta...

Implementierung einer Lösung für adaptive Textbereichshöhe in Vue

Inhaltsverzeichnis Versteckte Probleme Lösung zur...

jQuery Canvas zeichnet Bildüberprüfungscodebeispiel

In diesem Artikelbeispiel wird der spezifische Co...

Vue implementiert das Bild mit Schaltflächenwechsel

In diesem Artikelbeispiel wird der spezifische Co...

Einige etwas komplexere Verwendungsbeispielcodes in MySQL

Vorwort Ich glaube, dass die Syntax von MySQL nic...

JavaScript CSS3 zur Implementierung einer einfachen Video-Sperrfunktion

In diesem Artikel wird versucht, eine Demo zur Si...