ホームページ >バックエンド開発 >Golang >golang の Web デプロイメント

golang の Web デプロイメント

WBOY
WBOYオリジナル
2023-05-16 10:56:37627ブラウズ

1. はじめに

Golang 言語が徐々に普及するにつれて、開発やさまざまな環境でのデプロイメントに Golang 言語を使用する Web プロジェクトがますます増えています。この記事の目的は、Linux 環境に Golang Web プロジェクトをデプロイする方法を紹介することです。

2. 環境の準備

1. Git のインストール

Linux システムでは、次のコマンドを使用して Git をインストールできます:

sudo apt-get update
sudo apt-get install git

2. Golang のインストール

次のコマンドで Golang をインストールできます:

sudo apt-get update
sudo apt-get install golang

3. データベースのインストール

プロジェクトのニーズに応じて、MySQL、PostgreSQL、およびその他のデータベースをインストールできます。

3. プロジェクトのデプロイメント

1. コードを取得します

Git を使用してプロジェクトのコード リポジトリからコードを取得します:

git clone https://github.com/your/repository

2. project

Golang のコンパイラを使用してコンパイルします:

go build

コンパイル後、main などの実行可能ファイルが生成されます。

3. プロジェクトを開始します

プロジェクトを実行します:

./main

Linux システムでは、nohup コマンドを使用してプロジェクトをバックグラウンドで実行します:

nohup ./main &

起動後、curl およびその他のツールをテストに使用できます:

curl http://localhost:8080

4. Nginx を構成します

Web プロジェクトをより安定して安全にするために、リバース プロキシ サーバーが使用されます。多くの場合、Web プロジェクトの前に追加されます。 Nginx は、次のコマンドでインストールできる一般的なリバース プロキシ ソフトウェアです:

sudo apt-get update
sudo apt-get install nginx

次に、次の内容を Nginx 構成ファイルに追加します:

server {
  listen          80;
  server_name     example.com;

  location / {
    proxy_pass    http://127.0.0.1:8080;
    proxy_set_header  Host             $host;
    proxy_set_header  X-Real-IP        $remote_addr;
    proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
  }
}

上記の構成では、サーバーはポート 80 をリッスンし、プロキシ要求ヘッダーが設定されているローカル ポート 8080 にすべての要求を転送します。

次のコマンドを実行して Nginx 構成をリロードします:

sudo service nginx reload

5. デプロイメントの更新

新しいバージョンのコードをデプロイする必要がある場合は、次の手順を実行できます。 :

1. 最新のコードを取得します

Git を使用して、プロジェクトのコード リポジトリから最新のコードを取得します:

git pull origin master

2. 新しいバージョンをコンパイルします

Golang のコンパイラを使用してコンパイルする 新しいバージョン:

go build

3. プロジェクトを再起動する

プロジェクトを再起動する:

sudo service nginx restart

6. 結論

上記の手順を完了する、Linux システムの Golang Web アプリケーションのデプロイメントで実行できます。 Nginx のリバース プロキシは、より安定した安全なサービスを提供できると同時に、コードの更新を便利かつ迅速に実行できます。

以上がgolang の Web デプロイメントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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