Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >Wie verwende ich Docker-Container für kontinuierliche Integration und kontinuierliche Bereitstellung unter Linux?

Wie verwende ich Docker-Container für kontinuierliche Integration und kontinuierliche Bereitstellung unter Linux?

WBOY
WBOYOriginal
2023-07-31 13:28:541658Durchsuche

Wie verwende ich Docker-Container für kontinuierliche Integration und kontinuierliche Bereitstellung unter Linux?

Im Softwareentwicklungsprozess sind Continuous Integration und Continuous Deployment zu einem Trend geworden. Sie beschleunigen nicht nur die Entwicklung und Veröffentlichung von Software, sondern verbessern auch die Softwarequalität. In Linux-Systemen können kontinuierliche Integration und kontinuierliche Bereitstellung mithilfe von Docker-Containern problemlos erreicht werden. In diesem Artikel wird erläutert, wie Sie Docker-Container verwenden, um dieses Ziel zu erreichen.

1. Kontinuierliche Integration

Kontinuierliche Integration bezieht sich auf das häufige Zusammenführen von Entwicklercode in den Hauptcode und das anschließende automatische Erstellen und Testen des Codes. Durch die Verwendung von Docker-Containern kann für jeden Entwickler eine unabhängige Laufumgebung erstellt werden, wodurch Abhängigkeitsprobleme und Konflikte zwischen Codes vermieden werden. Hier ist ein Beispiel für die Verwendung von Docker-Containern für die kontinuierliche Integration:

  1. Bereiten Sie die Docker-Umgebung vor

Zuerst müssen Sie Docker auf dem Linux-System installieren, was mit dem folgenden Befehl abgeschlossen werden kann:

sudo apt-get install docker-ce

Nach der Installation ist Wenn Sie fertig sind, können Sie mit dem folgenden Befehl überprüfen, ob Docker erfolgreich installiert wurde:

docker --version
  1. Erstellen Sie ein Docker-Image

Während des kontinuierlichen Integrationsprozesses müssen Sie zunächst für jedes Projekt ein Docker-Image erstellen. Das Docker-Image enthält die laufende Umgebung und Abhängigkeiten des Projekts. Erstellen Sie eine Datei mit dem Namen Dockerfile im Projektstammverzeichnis und fügen Sie den folgenden Inhalt hinzu:

FROM node:12
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm", "start"]

Der obige Inhalt ist ein Beispiel für ein Node.js-Projekt. Der spezifische Inhalt kann entsprechend den tatsächlichen Anforderungen geändert werden. Verwenden Sie dann den folgenden Befehl, um das Docker-Image zu erstellen:

docker build -t myapp .

wobei myapp der benutzerdefinierte Imagename ist.

  1. Schreiben Sie ein Build-Skript

Um eine kontinuierliche Integration zu implementieren, müssen Sie ein Build-Skript im Code-Repository schreiben. Dieses Skript ist dafür verantwortlich, den neuesten Code abzurufen, das Docker-Image zu erstellen und das Image an das Docker-Image-Warehouse zu übertragen. Das Folgende ist ein Beispiel für ein Build-Skript:

#!/bin/bash

# 拉取最新的代码
git pull

# 构建Docker镜像
docker build -t myapp .

# 推送镜像到Docker镜像仓库
docker push myapp:latest

2. Kontinuierliche Bereitstellung

Kontinuierliche Bereitstellung bezieht sich auf die automatische Bereitstellung ausführbarer Dateien oder Docker-Images, die durch kontinuierliche Integration in der Produktionsumgebung erstellt wurden. Hier ist ein Beispiel für die Verwendung von Docker-Containern für die kontinuierliche Bereitstellung:

  1. Vorbereiten einer Produktionsumgebung

In einer Produktionsumgebung müssen Sie zunächst Docker und Docker Compose installieren. Die Installation kann mit dem folgenden Befehl abgeschlossen werden:

sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo apt-get install docker-compose

Nach Abschluss der Installation können Sie mit dem folgenden Befehl überprüfen, ob Docker Compose erfolgreich installiert wurde:

docker-compose --version
  1. Schreiben Sie eine Docker Compose-Datei

Um eine kontinuierliche Installation zu erreichen Für die Bereitstellung müssen Sie ein Docker Compose-Dokument in der Produktionsumgebung schreiben. Diese Datei definiert den Docker-Container und die zugehörige Konfiguration, die ausgeführt werden muss. Hier ist ein Beispiel für eine Docker Compose-Datei:

version: '3'
services:
  myapp:
    image: myapp:latest
    ports:
      - 8000:8000

Das Obige ist ein Beispiel für eine Webanwendung, die den Port 8000 des Containers dem Port 8000 des Hosts zuordnet. Andere Konfigurationen können entsprechend den tatsächlichen Anforderungen geändert werden.

  1. Schreiben Sie ein Bereitstellungsskript

Um eine kontinuierliche Bereitstellung zu erreichen, müssen Sie ein Bereitstellungsskript in der Produktionsumgebung schreiben. Dieses Skript ist dafür verantwortlich, die neueste Version des Docker-Images abzurufen und Docker Compose zum Starten des Containers zu verwenden. Das Folgende ist ein Beispiel für ein Bereitstellungsskript:

#!/bin/bash

# 拉取最新的版本的镜像
docker pull myapp:latest

# 使用Docker Compose启动容器
docker-compose up -d

Durch die oben genannten Schritte können Sie Docker-Container verwenden, um eine kontinuierliche Integration und kontinuierliche Bereitstellung unter Linux zu erreichen. Dieser Ansatz kann den Softwareentwicklungs- und -freigabeprozess erheblich vereinfachen und die Arbeitseffizienz verbessern.

Zusammenfassung:

In diesem Artikel wird erläutert, wie Sie Docker-Container für kontinuierliche Integration und kontinuierliche Bereitstellung unter Linux verwenden. Durch die Verwendung von Docker-Containern kann für jeden Entwickler eine unabhängige Laufumgebung erstellt werden, wodurch Abhängigkeitsprobleme vermieden werden. Gleichzeitig erleichtert Docker Compose die Bereitstellung und Verwaltung von Containern in einer Produktionsumgebung. Ich hoffe, dieser Artikel ist hilfreich für Sie.

Das obige ist der detaillierte Inhalt vonWie verwende ich Docker-Container für kontinuierliche Integration und kontinuierliche Bereitstellung unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn