第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Docker 容器中啟動 Golang 網(wǎng)絡服務器

在 Docker 容器中啟動 Golang 網(wǎng)絡服務器

Go
慕斯709654 2021-10-18 15:15:11
我正在創(chuàng)建一個服務,除其他外,它允許用戶隨意啟動/停止 Golang Web 服務器。為了讓 Nodejs 服務器在類似情況下運行,我只需nodejs /path/to/index.js  &disown在容器啟動時運行的批處理文件中發(fā)出一個。必要的位ADD gorun.sh /usr/local/bin/gorun.shRUN chmod +x /usr/local/bin/gorun.sh...ENTRYPOINT ["/bin/bash"]CMD ["/usr/local/bin/gorun.sh"]每次都可以完美運行。在gorun.sh我有nodejs /path/to/index.js & disown線路。現(xiàn)在我正在嘗試讓 Golang Web 服務器在類似條件下運行,我想我會嘗試相同的方法。我修改了 gorun.sh 腳本來讀取#! /bin/bashgo run /path/to/index.go & disown;ps aux | grep go現(xiàn)在奇怪的是。我嘗試通過兩種方式啟動 Go 服務器純粹作為一個實驗,我啟動了 Docker 容器,并gorun從終端調(diào)用了一個終端。Golang 服務器立即啟動,一切都很正常。為了更好地模擬現(xiàn)實世界中的工作方式 - 我將一個文件 startgo.txt 放在一個預先確定的位置,然后由一個調(diào)用 gorun 的 CRON 作業(yè)獲取。這一次,沒有快樂 - 服務器沒有啟動。為什么不直接go run /path/to/index.go & disown從 Docker 容器啟動腳本調(diào)用?也嘗試過,結果相同:服務器無法啟動。我不清楚這里發(fā)生了什么。為什么 Nodejs 服務器啟動而 Golang 服務器拒絕點空白?如果我在終端內(nèi)運行相同的腳本,為什么它會啟動?
查看完整描述

1 回答

?
POPMUISE

TA貢獻1765條經(jīng)驗 獲得超5個贊

這個問題驅(qū)使我在迫在眉睫的最后期限前轉過彎,我花了整整 24 小時才弄清楚發(fā)生了什么。這個問題是一個相當微妙的問題。所以這里是為了任何遇到這個線程的人的利益的解釋。


永遠不要忘記:為了讓 Golang 發(fā)揮它的魔力,操作系統(tǒng)必須能夠找到它。輸入 $GOPATH 環(huán)境變量。如果你像我一樣,你會按照網(wǎng)上某處的說明進行操作。我按照Vultr 上這篇文章中的說明進行操作。他們建議的要點


echo export GOPATH=/opt/gopkg >> ~/.bashrc

echo export GOROOT=/opt/go >> ~/.bashrc

echo export PATH=$PATH:$GOROOT/bin:$GOPATH/bin >> ~/.bashrc

很棒的說明 - 謝謝 Vultr。


關鍵問題


正如我在最初的問題中提到的,令我感到困惑的是,當我執(zhí)行gorun包含


go run /path/to/index.go &

從附加到它工作的 Docker 會話的終端會話。但是,當我嘗試從 Docker 會話開始時執(zhí)行的 bash 腳本執(zhí)行它時,它沒有。


當您稍微思考一下并查看上面 Vultr 說明中發(fā)生的事情時,一切都非常明顯。只有在交互式終端打開時才設置路徑變量!- 即不是當您嘗試go dosomething從任何舊的批處理文件執(zhí)行指令時 - 例如您在 Docker 容器啟動時運行的那個。


如果您想讓 Golang 在容器啟動時運行的 bash 腳本頂部的 Docker 容器內(nèi)正確運行,則需要發(fā)出


export GOPATH="/opt/gopkg"; 

export GOROOT="/opt/go";   

export PATH=$PATH:$GOPATH/bin:$GOROOT/bin; 


查看完整回答
反對 回復 2021-10-18
  • 1 回答
  • 0 關注
  • 340 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號