背景
眾所周知,go語言可打包成目標(biāo)平臺二進制文件是其一大優(yōu)勢,如此go項目在服務(wù)器不需要配置go環(huán)境和依賴就可跑起來。
操作
需求:打包部署到centos7
筆者打包環(huán)境:mac os
方法:進入main.go
所在目錄,輸入如下命令,當(dāng)前目錄便會生成main
的可執(zhí)行文件
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
Windows平臺打包到Linux執(zhí)行不一樣,需要輸入如下命令
set CGO_ENABLED=0 set GOOS=linux set GOARCH=amd64 go build
打包完成后,將二進制文件放到服務(wù)器系統(tǒng),賦可執(zhí)行權(quán)限:
chmod 773 main
直接運行即可:
./main
或后臺執(zhí)行:
nohup ./main 1>info.log 2>1
linux 后臺運行程序
一般為了程序后臺運行,我們需要使用nohup命令.
此時需要對程序運行時所產(chǎn)生的輸出信息記錄,因此就需要使用linux的信息輸出命令
一個例子
比如要讓redis-server程序后臺運行
1.非后臺運行:
$> ./redis-server
2.后臺運行:
$> nohup ./redis-server 1>/dev/null 2>1
上面的命令還可簡寫:
nohup ./redis-server >/dev/null 2>1
即去掉標(biāo)準(zhǔn)輸出數(shù)字1
后臺運行一個程序
1.先用 netstat -tln 查看端口信息
2.isof -i:端口 可以找到程序進程號PID
3.kill PID 可以關(guān)閉程序
如此便是go打包到linux平臺的完整操作,歡迎大家指證。
到此這篇關(guān)于Go打包二進制文件的實現(xiàn)的文章就介紹到這了,更多相關(guān)Go打包二進制文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
標(biāo)簽:貴陽 西雙版納 太原 慶陽 調(diào)研邀請 阿克蘇 德州 廣西
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Go打包二進制文件的實現(xiàn)》,本文關(guān)鍵詞 打包,二進制,文件,的,實現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。