首頁 > 後端開發 > Golang > 主體

安裝golang部署

WBOY
發布: 2023-05-22 12:51:09
原創
498 人瀏覽過

一、前言

Go是一門非常受歡迎的開源程式語言,其誕生於Google,目的是為了解決通用程式語言缺乏簡潔、高效和安全性問題。越來越多的企業開始使用Go作為後端開發語言,例如Uber、Netflix等。在本篇文章中,我們將介紹如何在Linux系統上安裝Go並進行部署。

二、安裝Go

  1. 下載Go

我們可以在Golang官網上找到最新的穩定版本的下載連結。開啟官網後,點選下載按鈕即可下載Go原始碼,並解壓縮到本機目錄。

  1. 安裝Go

解壓縮完成後,我們進入解壓縮後的目錄並執行以下命令進行安裝:

sudo tar -C /usr/local -xzf go<version>.linux-amd64.tar.gz
登入後複製

此命令將Go安裝到/usr/local/go目錄中。然後我們需要將Go加入到PATH環境變數中,以便終端機能夠找到Go的二進位。新增PATH的方法有多種,可以編輯~/.profile文件,也可以在/etc/environment文件中加入資訊。

~/.profile檔案末端新增以下程式碼即可:

export PATH=$PATH:/usr/local/go/bin
登入後複製

儲存並退出後執行以下命令以更新環境變數:

source ~/.profile
登入後複製
  1. 驗證安裝結果

安裝完成後,我們輸入以下指令驗證是否安裝成功:

go version
登入後複製

如果顯示Go版本號,則表示安裝成功。

三、部署Go應用程式

在我們將應用程式部署到伺服器之前,我們需要將應用程式編譯為二進位。假設我們有一個名為myapp的Go應用,我們可以使用以下命令進行編譯:

go build myapp.go
登入後複製

此命令將在當前目錄下產生一個名為myapp的可執行檔。

一般情況下,我們需要將應用程式部署到Web伺服器上。在本教程中,我們將使用Nginx作為Web伺服器。

  1. 安裝Nginx

在Debian或Ubuntu系統上,我們可以使用以下命令安裝Nginx:

sudo apt-get update
sudo apt-get install nginx
登入後複製

安裝完成後,我們需要啟動Nginx服務並驗證其是否正常運行:

sudo service nginx start
curl localhost
登入後複製

如果Nginx成功運行,則將看到一條歡迎訊息。

  1. 設定Nginx

當Go應用程式執行檔準備好並放置於伺服器上時,我們可以將其部署到Nginx伺服器中。下面是一個基本的Nginx配置文件,我們可以在/etc/nginx/sites-available中創建一個名為myapp的文件,並添加以下內容:

server {
    listen 80;
    server_name myapp.com;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
登入後複製

上面的設定將Nginx監聽80端口,並將部署在http://localhost:8080的Go應用程式到80端口。當請求進入伺服器時,Nginx將會轉送到代理位置,即http://localhost:8080

  1. 啟動應用程式

我們可以使用以下命令啟動Go應用程式:

./myapp
登入後複製

如果有錯誤訊息出現,請嘗試解決錯誤並再次執行命令。

  1. 存取應用程式

現在我們可以在瀏覽器或使用curl指令存取應用程式:

curl http://localhost
登入後複製

我們可以在Nginx的error .log(預設位於/var/log/nginx/error.log)檔案中查看可能出現的錯誤訊息。

四、總結

安裝Go並將應用程式部署到Linux上並不難。遵循以上步驟,你應該很容易完成安裝和部署工作。如果你有問題或建議,歡迎在下面的留言區留言。

以上是安裝golang部署的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!