開発者として、コードを迅速かつ安定してデプロイして実行する方法は、プロジェクト開発環境を構築する際に重要なスキルの 1 つです。この記事では、Ubuntu システムに Golang プロジェクトをデプロイする方法を紹介します。
開始する前に、次の手順を完了する必要があります。
次へ, 以下の手順で解説していきます。
まず、プロジェクト コードを取得する必要があります。ターミナルに次のコマンドを入力します。
git clone https://github.com/username/repository.git
ここで、 https://github.com/username/repository.git
は、プロジェクトの Git アドレスです。プロジェクトのホームページ。
コードのプルが完了したら、Golang ツール チェーンを使用してコンパイルする必要があります。プロジェクト ディレクトリで、次のコマンドを入力します。
go build main.go
このうち、main.go
がプロジェクトのエントリ ファイルです。このコマンドを実行すると、プロジェクトディレクトリに実行ファイルが生成されます。
コンパイルが完了したら、実行可能ファイルを直接実行できます。ターミナルに次のコマンドを入力します。
./main
このコマンドを実行すると、実行可能ファイルが実行を開始します。
実際の展開では、安定性と耐久性を確保するためにアプリケーションをバックグラウンドで実行する必要があります。一般的に使用される 2 つの方法は次のとおりです。
nohup を使用すると、プログラムをバックグラウンドで実行し、出力を指定されたファイルにリダイレクトできるため、ユーザーによるプログラムの破損を回避できます。ターミナルを終了します。強制終了します。
ターミナルに次のコマンドを入力します:
nohup ./main > log.txt 2>&1 &
その中に:
nohup
プログラムを開始し、HUP 信号を無視します。プログラムはバックグラウンドで実行できます。./main
は実行可能ファイルのパスとファイル名です。> log.txt
プログラムが出力した情報 log.txt
ファイルにリダイレクト; 2>&1
標準エラー出力と標準入出力を組み合わせて ## にリダイレクト#log.txt ファイル内;
バックグラウンドで実行するプログラムを配置します。
[Unit] Description=My Go Application [Service] Type=simple Restart=always User=root ExecStart=/path/to/app/main [Install] WantedBy=multi-user.targetこのサービス ファイルでは、サービスの説明、タイプ、再起動メカニズム、およびその他の構成項目を定義する必要があります。特定の設定項目の意味については、systemd の公式ドキュメントを参照してください。 設定が完了したら、次のコマンドを使用してサービスを開始できます:
systemctl start my-go-app.serviceサービス ファイルは
/etc/ に保存する必要があることに注意してください。 systemd/system ディレクトリ、
.service で終わります。
以上がGolang プロジェクトを Ubuntu システムにデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。