Die Idee kombiniert Docker, um Image-Paketierung und Bereitstellung mit einem Klick zu realisieren

Die Idee kombiniert Docker, um Image-Paketierung und Bereitstellung mit einem Klick zu realisieren

1. Docker auf dem Server installieren

yum installiere Docker

Ändern Sie die Konfigurationsdatei und öffnen Sie Port 2375

[root@microservice ~]# vim /usr/lib/systemd/system/docker.service

Fügen Sie -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock nach ExecStart=/usr/bin/dockerd-current \ hinzu.
Laden Sie die Konfigurationsdatei neu und starten Sie:

systemctl daemon-reload
systemctl starte Docker

Anhang: Mit Docker-Vorgängen verbundene Befehle

Der Befehl systemctl ist ein Befehl des Systemdienst-Managers, der eine Kombination der Befehle service und chkconfig ist.
Starten Sie Docker: systemctl start docker
Stoppen Sie Docker: systemctl stop docker
Starten Sie Docker neu: systemctl restart docker
Überprüfen Sie den Docker-Status: systemctl status docker
Beim Booten starten: systemctl enable docker

2. Idee zur Installation des Docker-Support-Plug-Ins und zur Konfiguration

1.idea lädt Docker-Support-Plugin herunter: Docker-Integration

(Tastenkombination Strg+Umschalt+A, nach Docker-Integration suchen, dann aktivieren, Idee neu starten, damit sie wirksam wird)

2. IDEA Docker-Plugin-Konfiguration

Datei–>Einstellungen–>Erstellen,Ausführen,Bereitstellen–>Docker–>Konfigurieren Sie wie folgt:

tcp://Server-IP-Adresse:2375

Hinweis: Solange die folgende Meldung „Verbindung erfolgreich“ angezeigt wird, bedeutet dies, dass die Verbindung erfolgreich war.

3. Konfigurieren Sie die POM-Datei:

<Bauen>
  <finalName>${Projekt.ArtifactId}</finalName>
  <Plugins>
    <Plugin>
      <groupId>org.springframework.boot</groupId>
      <artifactId>Spring-Boot-Maven-Plugin</artifactId>
      <Konfiguration>
        <fork>wahr</fork>
      </Konfiguration>
    </plugin>
    <!-- Unit-Tests überspringen -->
    <Plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <Konfiguration>
        <skipTests>wahr</skipTests>
      </Konfiguration>
    </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-->
        <imageName>fred/${project.artifactId}</imageName>
        <!--Tags angeben-->
        <BildTags>
          <imageTag>neueste</imageTag>
        </imageTags>
        <!-- Geben Sie den Dockerfile-Pfad an -->
        <dockerDirectory>src/main/docker</dockerDirectory>
        <!--Geben Sie die Remote-Docker-API-Adresse an-->
        <dockerHost>http://Server-IP-Adresse: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>
            <!-- Das einzubindende JAR-Paket, das dem im Dockerfile hinzugefügten Dateinamen entspricht-->
            <include>${project.build.finalName}.jar</include>
          </Ressource>
        </Ressourcen>
      </Konfiguration>
    </plugin>
  </plugins>
</bauen>

Angehängte Projektverzeichnisstruktur:

4. Schreiben Sie Dockerfile in das Stammverzeichnis

# Docker-Datei
# Basierend auf dem Bild VON openjdk:8-jdk-alpine
 
VOLUMEN /opt/tmp
 
ADD sg-business.jar app.jar
 
# -Djava.security.egd=file:/dev/./urandom kann das Problem lösen, dass Tomcat möglicherweise langsam startet.# Weitere Einzelheiten finden Sie unter: https://www.cnblogs.com/mightyvincent/p/7685310.html
EINSTIEGSPUNKT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
 
# Externer Port EXPOSE 8081

5. Klicken Sie auf das zu erstellende Maven-Paket

Erstellen Sie eine erfolgreiche Nachricht

6. Klicken Sie unten auf den Docker, um zur Docker-Oberfläche zu gelangen. Doppelklicken Sie auf Docker, um eine Verbindung zum Server herzustellen. Docker zeigt das Docker-Image auf dem Server an. Suchen Sie das gerade generierte Image (2 in der Abbildung) und klicken Sie auf „Container erstellen“.

7. Konfigurieren Sie den Docker-Container so, dass der Port und der Projektschnittstellenport verfügbar sind, und starten Sie dann den Container

Starten Sie abschließend nach der Einrichtung den Container. Gehen Sie nach erfolgreichem Start zu Alibaba Cloud, um zu überprüfen, ob der Start erfolgreich war.

Referenz-Blogadresse:

https://www.jianshu.com/p/186e9926600e

https://blog.lqdev.cn/2018/07/27/springboot/chapter-fourteen/

https://www.cnblogs.com/fangts/p/10299431.html

Dies ist das Ende dieses Artikels über Docker-Ideensammlungen zur Bereitstellung von Bildpaketen mit einem Klick. Weitere verwandte Docker-Ideensammlungen zur Bereitstellung von Bildpaketen mit einem Klick finden Sie in den vorherigen Artikeln von 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:
  • So packen Sie das Projekt per Idee in Docker
  • Eine kurze Analyse der SpringBoot-Verpackung und des Hochladens in Docker sowie der Implementierung der Bereitstellung mehrerer Instanzen (IDEA-Version)
  • So integrieren Sie Docker in IDEA, um eine Verpackung zu erreichen

<<:  Wie besteht man die W3C-Validierung?

>>:  Beispielcode für Box-Shadow und Drop-Shadow zum Erreichen einer unregelmäßigen Projektion

Artikel empfehlen

So debuggen Sie das Loader-Plugin in einem Webpack-Projekt

Als ich kürzlich lernte, wie man webpack verwende...

Erläuterung des MySQL-Multitabellen-Join-Abfragebeispiels

In tatsächlichen Projekten gibt es Beziehungen zw...

Zusammenfassung zum Erstellen und Verwenden von Array-Methoden in Bash-Skripten

Definieren eines Arrays in Bash Es gibt zwei Mögl...

Ursachen und Lösungen für MySQL-Datenverlust

Inhaltsverzeichnis Vorwort Problembeschreibung Ur...

Detaillierte Erklärung der Kartenüberlagerung in OpenLayers6

1. Overlay-Übersicht Overlay bedeutet Überlagerun...

Natives JavaScript, um den Karusselleffekt zu erzielen

In diesem Artikel wird der spezifische Code für J...

js, um einen interessanten Countdown-Effekt zu erzielen

js interessanter Countdown-Fall. Zu Ihrer Informa...

Beispielcode zur Implementierung eines 3D-Rotationseffekts mit reinem CSS

Verwenden Sie hauptsächlich die Eigenschaften „pr...

jQuery Treeview-Baumstrukturanwendung

In diesem Artikelbeispiel wird der Anwendungscode...

Tutorial zum Erstellen des File-Sharing-Dienstes Samba unter CentOS6.5

Samba-Dienste: Dieser Inhalt dient als Referenz f...

Detaillierte Erklärung zur Verwendung von HTML-Header-Tags

HTML besteht aus zwei Teilen: Kopf und Text ** Da...