ホームページ >バックエンド開発 >Golang >Linux に Golang サービスをデプロイする方法

Linux に Golang サービスをデプロイする方法

PHPz
PHPzオリジナル
2023-04-05 13:49:271589ブラウズ

Golang は近年非常に人気のあるプログラミング言語であり、簡潔なコード、高速な実行速度、強力な同時実行機能などの多くの利点を備えており、サーバーサイド開発の分野で広く使用されています。この記事では、Linux システムに Golang サービスをデプロイする方法を紹介します。

1. Golang と必要なツールをインストールする

Golang サービスをデプロイする前に、まず Golang と必要なツールをインストールする必要があります。次のコマンドを使用してインストールできます。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install golang
sudo apt-get install git

最後の行では、Git ツールをインストールします。 Golang プロジェクトは通常、Git を通じてバージョン管理されるためです。インストールが完了したら、次のコマンドを実行して、インストールが成功したかどうかを確認できます。

go version
git version

上記 2 つのコマンドの両方でバージョン番号が出力された場合は、インストールが成功したことを意味します。

2. Golang サービスの作成

Golang と必要なツールをインストールしたら、Golang サービスの作成を開始できます。単純な HTTP サービスを例として、コード例を次に示します。

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", helloHandler)
    fmt.Println("Server started on port 8080")
    http.ListenAndServe(":8080", nil)
}

func helloHandler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, World!")
}

このサービス コードには単純な関数があり、ローカル ポート 8080 をリッスンし、それぞれに対して文字列「Hello, World!」を返します。リクエスト。 http.HandleFunc メソッドを使用して、ルートとそのルートのハンドラー関数を指定します。

3. Golang サービスのビルドとテスト

Golang サービス コードを作成した後、それをビルドしてテストする必要があります。このサービスは、コマンド go build を使用して構築できます。このコマンドは、現在のディレクトリに実行可能ファイルを生成します。テストする前に、サービスがポート 8080 でリッスンできるように現在のユーザーのファイアウォール ルールを変更する必要があります。次のコマンドを使用できます:

sudo ufw allow 8080/tcp

変更が完了したら、テストのためにサービスを開始できます。次のコマンドを使用してサービスを開始できます。

./<可执行文件名> &

& 記号は、サービスがバックグラウンドで実行されていることを意味します。正常に起動したら、ブラウザまたは curl コマンドを使用してサービスにアクセスできます。

4. Golang サービスのデプロイメントに PM2 を使用する

Golang サービスを手動で開始するのは明らかにあまりフレンドリーではなく、特にサービスの再起動や監視が必要な場合はさらに不便です。したがって、PM2 ツールはサービスの管理と展開に使用できます。 PM2 は Node.js エコシステムのプロセス管理ツールですが、Golang などの他の言語で書かれたプロセスの管理もサポートしています。以下は、Golang サービスのデプロイメントに PM2 を使用する例です。

  1. PM2 をインストールします
sudo npm install -g pm2
  1. サービス プログラムが配置されているディレクトリを入力し、
pm2 start <可执行文件名> --name=<服务名称>

このうち、--name パラメータはサービスの名前を指定するために使用されます。

  1. 次のコマンドを使用して、サービスのステータスを表示できます:
pm2 list
  1. PM2 によって管理されているプロセスの場合、次のコマンドを使用できます。サービスを操作するコマンド :
pm2 restart <服务名称>
pm2 stop <服务名称>
pm2 delete <服务名称>

上記は、Golang サービスのデプロイメントに PM2 を使用する簡単な例です。サービスの管理と展開に PM2 を使用すると、サービスの管理と監視が容易になると同時に、手動管理のプレッシャーも大幅に軽減されます。

概要

この記事では、Golang と必要なツールのインストール、Golang サービスの作成、サービスの構築とテスト、サービスへの PM2 の使用など、Linux システムに Golang サービスを展開する方法について詳しく説明します。展開などこの記事が Golang サービスをデプロイしている読者にとって役立つことを願っています。

以上がLinux に Golang サービスをデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。