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

王林
リリース: 2023-05-15 15:22:06
転載
1169 人が閲覧しました

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 までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!