ホームページ >運用・保守 >Linuxの運用と保守 >Linux に Golang サービスをデプロイする方法

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

王林
王林転載
2023-05-15 15:22:061223ブラウズ

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 <服务名称>

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

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。