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
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 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"]
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 .
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
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
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>
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
In diesem Befehl ist
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!