Golang アプリケーションをサーバーに迅速にデプロイするにはどうすればよいですか?

PHPz
リリース: 2024-01-16 11:07:05
オリジナル
1030 人が閲覧しました

Golang アプリケーションをサーバーに迅速にデプロイするにはどうすればよいですか?

Golang をサーバーにすばやくデプロイするにはどうすればよいですか?

近年、新興プログラミング言語としての Golang (略して Go) は、その効率的で簡潔な並列機能により大きな注目を集めています。開発者にとって、Golang アプリケーションをサーバーに迅速にデプロイする方法は重要なスキルです。この記事では、迅速な展開を実現するための一般的なツールと手順の使用方法について説明し、具体的なコード例を示します。

1. 準備作業
開始する前に、次の準備作業が完了していることを確認する必要があります:

  1. Golang 開発環境をインストールします: 公式 Web サイト ( https://golang.org /dl/) オペレーティング システムに適した Golang 開発環境をダウンロードしてインストールします。
  2. サーバー環境を確認します。サーバーが実行中であり、SSH プロトコルを通じてアクセスできることを確認します。
  3. 展開用のプロジェクトを作成する: これは、まったく新しいプロジェクトでも、ローカルで開発されたプロジェクトでもかまいません。

2. コード管理に Git を使用する
コード管理は開発において不可欠なタスクであり、プロジェクトの安定性とバージョン管理を確保できます。この記事では、コード管理ツールとして Git を使用します。

  1. ローカル コンピューター上で Git を使用して新しいコード リポジトリを作成します:

    $ git init
    ログイン後にコピー
  2. すべてのプロジェクト ファイルをコード リポジトリに追加します:

    $ git add .
    ログイン後にコピー
  3. コードをコード リポジトリに送信し、関連するコメントを追加します。

    $ git commit -m "Initial commit"
    ログイン後にコピー
  4. サーバーに Git をインストールし、SSH プロトコルを使用してコード リポジトリのクローンを作成します。

    $ sudo apt install git
    $ git clone git@example.com:/path/to/repo.git
    ログイン後にコピー

3. Go アプリケーションをコンパイルする
Go アプリケーションをサーバーにデプロイする前に、まずそれをコンパイルして、Go ランタイム環境がサーバーにインストールされていることを確認する必要があります。

  1. ローカル コンピューターで次のコマンドを実行してコードをコンパイルします。

    $ go build -o 项目名
    ログイン後にコピー

    このうち、プロジェクト名はコンパイルされた実行可能ファイルの名前です。ファイル。

  2. コンパイルしたプログラムをサーバーにアップロードします:

    $ scp 项目名 user@server_ip:目标路径
    ログイン後にコピー

    このうち、user はサーバーアクセス権を持つユーザー名、 server_ip はサーバーの IP アドレス、target path はサーバーがアプリケーションを保存するパスです。

4. 依存関係をインストールする
プロジェクトが他のパッケージまたはモジュールに依存している場合は、これらの依存関係がサーバーにインストールされていることを確認する必要があります。

go mod Vendor コマンドを使用して、依存関係パッケージをローカル プロジェクトのベンダー ディレクトリにコピーし、ベンダー ディレクトリを一緒にサーバーにアップロードできます。

サーバーでは、プロジェクト ディレクトリで go mod download コマンドを使用して依存関係をダウンロードするか、go modvendor コマンドを使用してすべての依存関係をロードできます。ベンダー ディレクトリ。具体的なコマンドは次のとおりです:

$ go mod vendor
$ go mod verify
ログイン後にコピー

5. アプリケーションの開始
依存関係をコンパイルしてインストールした後、アプリケーションを開始できます。

  1. SSH プロトコルを使用してサーバーにログインします:

    $ ssh user@server_ip
    ログイン後にコピー

    このうち、user はサーバーのアクセス権を持つユーザー名です。 server_ip はサーバーの IP アドレスです。

  2. プロジェクト ディレクトリを入力します:

    $ cd 项目目录路径
    ログイン後にコピー
  3. アプリケーションを起動します:

    $ nohup ./项目名 &
    ログイン後にコピー

    その中に、プロジェクト名 以前にコンパイルされた実行可能ファイルの名前です。

nohup コマンドを使用すると、アプリケーションをバックグラウンドで実行し続け、出力情報を nohup.out ファイルに保存できます。

  1. アプリケーションが正常に起動したかどうかを確認します:

    $ ps -ef | grep 项目名
    ログイン後にコピー

    出力に実行中のアプリケーション プロセスが含まれている場合は、アプリケーションが正常に起動したことを意味します。

6. Nginx をリバース プロキシとして使用する
外部ユーザーにアプリケーションを提供してアクセスできるようにするために、Nginx をリバース プロキシ サーバーとして使用できます。

  1. サーバーに Nginx をインストールします:

    $ sudo apt install nginx
    ログイン後にコピー
  2. Nginx 構成ファイルを編集します/etc/nginx/sites-available/default:

    $ sudo nano /etc/nginx/sites-available/default
    ログイン後にコピー
  3. 以下を構成ファイルに追加します:

    server {
     listen 80;
     server_name example.com;
    
     location / {
         proxy_pass http://localhost:应用程序端口号;
     }
    }
    ログイン後にコピー

    example.com を実際のドメイン名またはサーバー IP アドレスに置き換えます。 Application Port Number を、アプリケーションがリッスンしているポート番号に置き換えます。

  4. Nginx 構成ファイルをリロードします:

    $ sudo systemctl reload nginx
    ログイン後にコピー

このようにして、サーバーの IP アドレスまたはドメインにアクセスすることで、デプロイされた Go アプリケーションにアクセスできるようになります。名前。

概要:
上記の手順により、Golang アプリケーションをサーバーにすばやくデプロイできます。実際の展開プロセスでは、特定の状況に応じて調整や最適化を行うことができます。この記事が、Golang アプリケーションをすぐにデプロイしたいと考えている開発者にとって役立つことを願っています。

以上がGolang アプリケーションをサーバーに迅速にデプロイするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート