So stellen Sie Go-Sprachanwendungen unter Linux bereit

PHPz
Freigeben: 2023-04-05 09:25:06
Original
1541 Leute haben es durchsucht

In der heutigen Softwareentwicklungsbranche bietet die Go-Sprache im Vergleich zu anderen Sprachen die Vorteile einer starken Parallelität, einer einfachen Entwicklung und einer hohen Geschwindigkeit. Daher entscheiden sich immer mehr Unternehmen für die Verwendung der Go-Sprache zur Entwicklung von Anwendungen. Wie erfolgt die Bereitstellung unter Linux bei der Bereitstellung von Go-Sprachanwendungen?

1. Installation der Linux-Umgebung

Vor der Bereitstellung müssen Sie zunächst die Go-Sprache unter Linux installieren. Bevor Sie die Go-Sprache installieren, müssen Sie sicherstellen, dass auf dem Linux-System die erforderlichen Abhängigkeiten wie gcc, make usw. installiert sind. Um diese Abhängigkeiten zu installieren, können Sie den folgenden Befehl verwenden:

sudo apt-get update sudo apt-get install build-essential
Nach dem Login kopieren

Als nächstes laden Sie die Go-Sprache herunter und entpacken Sie sie:

wget https://dl.google.com/go/go1.13.5.linux-amd64.tar.gz tar -xvf go1.13.5.linux-amd64.tar.gz
Nach dem Login kopieren

Verschieben Sie sie nach dem Entpacken in das Verzeichnis/usr/local/Der Befehl lautet wie folgt:/usr/local/目录下,命令如下:

sudo mv go /usr/local/
Nach dem Login kopieren

然后,需要将go语言的bin目录路径添加到PATH环境变量中:

export PATH=$PATH:/usr/local/go/bin
Nach dem Login kopieren

将上述命令添加到文件/etc/profile中,使其永久生效。

二、部署应用程序

在Linux下部署go语言应用程序的方式有许多种方法,下面介绍两种常用的方式。

1.使用源代码部署

首先,需要在Linux上安装Git:

sudo apt-get install git
Nach dem Login kopieren

然后,将代码克隆至$GOPATH/src/目录下:

git clone https://github.com/xxxxx/xxxxx.git
Nach dem Login kopieren

编译应用程序:

cd $GOPATH/src/xxxxx go build main.go
Nach dem Login kopieren

最后运行应用程序即可:

./main
Nach dem Login kopieren
Nach dem Login kopieren

2.使用二进制文件部署

该方式在开发过程中,可以使用go打包工具将应用程序打包成二进制文件,然后将该文件上传至Linux服务器进行部署。具体步骤如下:

GOOS=linux GOARCH=amd64 go build main.go
Nach dem Login kopieren

运行后,会生成一个名为main的二进制文件。此时,将该文件上传至Linux服务器中,在命令行中运行即可:

./main
Nach dem Login kopieren
Nach dem Login kopieren

三、使用Supervisord进行服务管理

Supervisord是一个开源的进程管理工具,可以用于监控、管理Unix/Linux系统上的进程。下面介绍如何使用Supervisord进行服务管理。

首先,需要安装Supervisord:

sudo apt-get install supervisor
Nach dem Login kopieren

安装后,需要编辑配置文件/etc/supervisor/conf.d/,添加以下内容:

[program:app-name] directory = /path/to/app command = /path/to/app/main autostart = true autorestart = true stdout_logfile = /var/log/app/stdout.log stderr_logfile = /var/log/app/stderr.log
Nach dem Login kopieren

其中,app-name为要运行的应用程序名,directory为应用程序所在的路径,command为启动应用程序的命令,autostartautorestart为Supervisord自动启动和重启机制,stdout_logfilestderr_logfile

sudo supervisorctl reread sudo supervisorctl update sudo service supervisor restart
Nach dem Login kopieren
Dann müssen Sie den Bin-Verzeichnispfad der Go-Sprache zur Umgebungsvariablen PATH hinzufügen:

rrreee

Fügen Sie den obigen Befehl zur Datei /etc/profilehinzu mach es dauerhaft.

2. Anwendungen bereitstellen

Es gibt viele Möglichkeiten, Go-Sprachanwendungen unter Linux bereitzustellen. Nachfolgend werden zwei gängige Methoden vorgestellt.

1. Mit Quellcode bereitstellenZuerst müssen Sie Git unter Linux installieren: rrreeeDann klonen Sie den Code in das Verzeichnis $GOPATH/src/: rrreeeKompilieren Sie die Anwendung : rrreeeFühren Sie die Anwendung abschließend aus: rrreee2. Verwenden Sie die Bereitstellung von BinärdateienBei dieser Methode können Sie während des Entwicklungsprozesses das Go-Packaging-Tool verwenden, um die Anwendung in eine Binärdatei zu packen und die Datei dann hochzuladen an den Linux-Server zur Verarbeitung bereitstellen. Die spezifischen Schritte sind wie folgt: rrreeeNach dem Ausführen wird eine Binärdatei mit dem Namen maingeneriert. Laden Sie an dieser Stelle die Datei auf den Linux-Server hoch und führen Sie sie in der Befehlszeile aus: rrreee 3. Verwenden Sie Supervisord für die Dienstverwaltung Supervisord ist ein Open-Source-Prozessverwaltungstool, das zur Überwachung und Verwaltung von Unix/Linux verwendet werden kann Prozesse auf dem System. Im Folgenden wird beschrieben, wie Sie Supervisord für die Dienstverwaltung verwenden. Zuerst müssen Sie Supervisord installieren: rrreeeNach der Installation müssen Sie die Konfigurationsdatei /etc/supervisor/conf.d/bearbeiten und den folgenden Inhalt hinzufügen: rrreeeUnter ihnen , app-nameist der Name der auszuführenden Anwendung, directoryist der Pfad, in dem sich die Anwendung befindet, commandist der Befehl zu Starten Sie die Anwendung, autostartund autorestartsind automatische Start- und Neustartmechanismen von Supervisord, stdout_logfileund stderr_logfilesind Protokolldateipfade . Zum Schluss starten Sie den Supervisord-Dienst neu: rrreeeDie oben genannten Schritte sind die Schritte zur Verwendung von Supervisord für die Dienstverwaltung. ZusammenfassungIn diesem Artikel wird detailliert beschrieben, wie Go-Sprachanwendungen unter Linux bereitgestellt werden, einschließlich der Installation von Go-Sprache, der Bereitstellung von Anwendungen und der Verwendung von Supervisord für die Dienstverwaltung. Diese Methoden sind alle machbar und können entsprechend den spezifischen Umständen in der praktischen Anwendung ausgewählt werden. Nur wenn Sie diese Techniken verstehen und beherrschen, können Sie entwickelte Anwendungen schnell und einfach bereitstellen.

Das obige ist der detaillierte Inhalt vonSo stellen Sie Go-Sprachanwendungen unter Linux bereit. 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
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!