<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 概要 幾種常見的部署方法如下: 1. 本地編譯代碼,然后復制到服務器上運行 2. 在服務器上拉取代碼,然后編譯、運行 3. 使用 Heroku 進行部署 使用命令行演示互動部署 - 一般將web服務器作為守護程序運行。常用工具有: * [Ubuntu Upstart](http://upstart.ubuntu.com/) * [systemd](http://www.freedesktop.org/wiki/Software/systemd) ## 本地編譯 目標機器上不需要安裝Go語言環境。[Revel命令行工具](http://gorevel.cn/docs/manual/tool.html)?提供了`package`包命令,用來編譯和壓縮應用程序, 如下所示: ~~~ # 本地測試運行 $ revel run import/path/to/app .. 測試程序 .. # 打包程序 $ revel package import/path/to/app 打包的文件準備好了: app.tar.gz # 復制到目標機器 $ scp app.tar.gz target:/srv/ # 在目標機器上運行 $ ssh target $ cd /srv/ $ tar xzvf app.tar.gz $ bash run.sh ~~~ 如果您的本地機器與目標機器的架構相同,那么不會有什么問題。否則,你需要參考交叉編譯來構建指定平臺架構的程序。 ### 增量部署 由于靜態鏈接的二進制程序帶有完整的資源文件,可能會變得相當大,所以支持增量部署。 ~~~ # 構建應用程序到一個臨時目錄 $ revel build import/path/to/app /tmp/app # 將臨時目錄 Rsync 到服務器上的主目錄 $ rsync -vaz --rsh="ssh" /tmp/app server # 連接到服務器,并重新啟動應用程序 ... ~~~ Rsync 支持ssh完整的復制操作。例如, 下面是一個更復雜的操作: ~~~ # 一個使用自定義證書、登錄名和目標目錄的例子 $ rsync -vaz --rsh="ssh -i .ssh/go.pem" /tmp/myapp2 ubuntu@ec2-50-16-80-4.compute-1.amazonaws.com:~/rsync ~~~ ## 在服務器上構建 這種方法依賴你的版本控制系統來分發、更新代碼。你需要在服務器上安裝Go語言環境。好處是,你避免了潛在的交叉編譯。 ~~~ $ ssh server ... 安裝Go語言環境 ... ... 配置存儲庫 ... # 進入你的應用程序所在的目錄 (GOPATH環境變量), 拉取代碼, 并運行。 $ cd gocode/src/import/path/to/app $ git pull $ revel run import/path/to/app prod ~~~ ## Heroku Revel 維護了一個?[Heroku Buildpack](https://github.com/revel/heroku-buildpack-go-revel), 允許一條命令即可部署代碼,請參考?[自述文件](https://github.com/revel/heroku-buildpack-go-revel/blob/master/README.md)?使用說明 ## 交叉編譯 為了創建一個交叉編譯環境,我們需要從源代碼構建。參考?[從源代碼安裝Go](http://golang.org/doc/install/source)?獲取更多信息。你必須正確設置 $PATH 和 $GOPATH 環境變量, 否則,如果已經有一個二進制的Go語言包存在,你會陷入嚴重的錯誤。 當Go編譯器安裝成功后,通過指定 GOOS 和 GOARCH 目標環境來建立交叉編譯環境。參考?[可用的環境變量](http://golang.org/doc/install/source#environment)?獲取更多信息。 ~~~ $ cd /path/to/goroot/src $ GOOS=linux GOARCH=amd64 ./make.bash --no-clean $ GOOS=windows GOARCH=386 ./make.bash --no-clean ~~~ 在新的環境中安裝Revel,然后設定目標架構,打包應用程序。 ~~~ $ GOOS=linux GOARCH=amd64 revel package import/path/to/app ~~~ 然后,將壓縮包復制到目標平臺。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看