Heim > Backend-Entwicklung > Golang > Golang-Bereitstellungsprozess

Golang-Bereitstellungsprozess

WBOY
Freigeben: 2023-05-16 11:27:08
Original
756 Leute haben es durchsucht

Mit der kontinuierlichen Aktualisierung der Internet-Technologie ist die Golang-Sprache zu einer beliebten Sprache geworden und wird aufgrund ihrer hohen Effizienz, Stabilität, plattformübergreifenden und anderen Eigenschaften häufig verwendet. Obwohl die Golang-Entwicklung einfach und leicht zu starten ist, ist der Bereitstellungsprozess relativ kompliziert und erfordert eine sorgfältige Untersuchung. In diesem Artikel wird der Golang-Bereitstellungsprozess anhand der folgenden Aspekte erläutert, um den Lesern ein besseres Verständnis der Golang-Bereitstellung zu ermöglichen.

1. Kompilieren Sie Golang-Anwendungen.

Der erste Schritt bei der Bereitstellung von Golang-Anwendungen ist die Kompilierung. Golang ist eine statisch kompilierte Sprache, was bedeutet, dass Ihre Anwendung vollständig in eine Binärdatei kompiliert wird und nicht auf externe Bibliotheken oder Laufzeitumgebungen angewiesen ist. Dies reduziert Abhängigkeiten und Komponentenrisiken und verbessert die Portabilität.

Bevor Sie das Programm kompilieren, müssen Sie Golang installieren und die entsprechende Umgebung konfigurieren. Öffnen Sie das Terminal und geben Sie den folgenden Befehl ein, um sicherzustellen, dass die Installation abgeschlossen ist.

go version
Nach dem Login kopieren

Der obige Befehl sollte die verwendete Golang-Versionsnummer ausgeben.

Im Allgemeinen muss für die Bereitstellung von Golang-Webdiensten die Nummer des Überwachungsports im Code angegeben werden. Öffnen Sie im Code-Stammverzeichnis ein Terminal und geben Sie den folgenden Befehl ein, um das Projekt zu kompilieren:

go build
Nach dem Login kopieren

Nach der Kompilierung wird eine ausführbare Datei generiert, das Programm, das wir bereitstellen müssen.

2. Erstellen Sie das Docker-Image

Nachdem wir die Anwendung erstellt haben, müssen wir sie in einen Container legen, bevor wir sie bereitstellen. Da unterschiedliche Serverumgebungen oft unterschiedliche Probleme haben, können durch den Einsatz der Containertechnologie Anwendungen und Umgebungen zusammengepackt werden, wodurch die Unterschiede zwischen verschiedenen Umgebungen behoben werden. In diesem Abschnitt wird erläutert, wie Sie mit Docker ein Image einer Golang-Anwendung erstellen, um die spätere Bereitstellung zu erleichtern.

Die Rolle der Dockerfile-Datei besteht darin, die Ausführungsumgebung der Anwendung im Docker-Container zu definieren. Gleichzeitig können wir auch den Code angeben, der in den Container kopiert werden muss.

FROM golang:1.16-alpine

# 设置代码目录
ENV APP_PATH /go/src/golang_deploy
WORKDIR $APP_PATH

# 拷贝代码到容器内
COPY . $APP_PATH

# 编译应用程序
RUN go build

# 暴露端口号
EXPOSE 8000

# 定义运行命令
ENTRYPOINT ["./golang_deploy"]
Nach dem Login kopieren

In der obigen Docker-Datei beginnen wir mit dem Aufbau unseres eigenen Containers aus dem offiziellen Golang-Image 1.16-alpine. Dann geben wir das Verzeichnis des Anwendungscodes an, kopieren den Code in den Container und kompilieren den Code. Schließlich geben wir die Portnummer an, die der Container der Außenwelt zugänglich macht, und definieren den Startbefehl für die Anwendung im Container.

Bevor wir das Docker-Image erstellen, müssen wir Docker installieren und den Docker-Dienst starten. Verwenden Sie den folgenden Befehl, um die Dockerfile-Datei zu erstellen. Dieser Befehl markiert das Image beim Erstellen auch mit golang_deploy.

docker build -t golang_deploy .
Nach dem Login kopieren

Der obige Befehl erstellt ein angepasstes Golang-Laufbild basierend auf der Dockerfile-Datei und die erforderlichen Abhängigkeiten und der Code werden in das Bild gepackt.

3. Stellen Sie Golang-Anwendungen bereit

Nachdem das Docker-Image erstellt wurde, können wir es auf dem Server bereitstellen, was bedeutet, dass der Container unsere Anwendung ausführen kann. Dank der leistungsstarken Portabilität von Docker können Anwendungen auf jeder Plattform ausgeführt werden, die Docker unterstützt.

Verwenden Sie den folgenden Befehl, um den Docker-Container der Golang-Anwendung zu starten.

docker run -d -p 8000:8000 golang_deploy
Nach dem Login kopieren

Der obige Befehl startet einen neuen golang_deploy-Container im Vordergrund (Parameter -d bedeutet „im Hintergrund ausführen“) und stellt den Port 8000 des Containers dem Host-Port 8000 zur Verfügung.

4. Überprüfung fehlender Links

Obwohl die automatische Bereitstellung praktisch ist, gibt es immer einige kleine Probleme, die manuell gelöst werden müssen, oft verursacht durch fehlende Links. Im Folgenden finden Sie einige häufig gestellte Fragen, die wir überprüfen können.

Überprüfen Sie, ob die Anwendung im Container ausgeführt wird:

docker ps
Nach dem Login kopieren

Der obige Befehl wird verwendet, um die ausgeführten Container aufzulisten. Sie sollten den Container sehen können, den Sie gerade bereitgestellt haben.

Überprüfen Sie, ob die Anwendung den vom Docker-Container (8000) bereitgestellten Port überwacht:

 docker port <CONTAINER ID>
Nach dem Login kopieren

Der obige Befehl kann die Portzuordnung des angegebenen Containers abfragen, wobei < ;CONTAINER ID> sollte die Container-ID sein, die von Ihrem ersten Befehl docker ps ausgegeben wird.

Verwenden Sie abschließend einen Browser oder Curl, um zu überprüfen, ob die Golang-Anwendung tatsächlich ausgeführt wird:

curl http://<IP>:8000
Nach dem Login kopieren

In diesem Befehl ist die IP-Adresse Ihres Servers.

Nach diesen Schritten haben wir die Golang-Anwendung erfolgreich bereitgestellt. Ich hoffe, dass dieser Artikel jedem ein tieferes Verständnis der Bereitstellung von Golang-Anwendungen vermitteln kann.

Das obige ist der detaillierte Inhalt vonGolang-Bereitstellungsprozess. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage