golang程序使用alpine編譯出最小arm鏡像實(shí)現(xiàn)
golang程序使用alpine編譯出最小arm鏡像
基礎(chǔ)鏡像準(zhǔn)備
如果想要打arm架構(gòu)的鏡像就在arm的機(jī)器上執(zhí)行,如果想打amd的鏡像就在amd機(jī)器上執(zhí)行, 會(huì)自己根據(jù)機(jī)器的架構(gòu)來(lái)下載基礎(chǔ)鏡像。
這里我以arm架構(gòu)的機(jī)器為例
查看Dockerfile
FROM alpine:latest # 設(shè)置時(shí)區(qū)為上海 RUN apk add tzdata &&cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime \ &&echo "Asia/Shanghai">/etc/timezone \ &&apk del tzdata
編譯鏡像命令,把它做為基礎(chǔ)鏡像 docker build -t 192.168.1.187/library/alpine-arm64-go:v1.0 .
golang程序編譯鏡像
編譯Dockerfile如下
FROM 192.168.1.187/library/alpine-arm64-go:v1.0 COPY analysis /opt/analysis RUN chmod +x /opt/analysis ENTRYPOINT ./opt/analysis -MQTT_IP $MQTT_IP -MQTT_PORT $MQTT_PORT -MQTT_USERNAME $MQTT_USERNAME -MQTT_PASSWORD $MQTT_PASSWORD
編譯命令 docker build -t 192.168.1.187/library/arm64-analysis:v1.0 .
運(yùn)行
在前面的Dockerfile中,我們加入的環(huán)境變量,啟動(dòng)的時(shí)候需要設(shè)置環(huán)境變量啟動(dòng)
docker run -d --name analysis --restart=always -e MQTT_IP=192.168.1.188 -e MQTT_PORT=1883 -e MQTT_USERNAME=admin -e MQTT_PASSWORD=liang_2023 192.168.1.187/library/arm64-analysis:v1.0
以上就是golang程序使用alpine編譯出最小arm鏡像實(shí)現(xiàn)的詳細(xì)內(nèi)容,更多關(guān)于go alpine編譯arm鏡像的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Go內(nèi)存節(jié)省技巧簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要為大家介紹了Go內(nèi)存節(jié)省技巧簡(jiǎn)單實(shí)現(xiàn)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01詳解Golang中interface{}的注意事項(xiàng)
學(xué)習(xí)?golang?,對(duì)于?interface{}?接口類(lèi)型,我們一定繞不過(guò),這篇文章咱們就來(lái)一起來(lái)看看?使用?interface{}?的時(shí)候,都有哪些注意事項(xiàng)吧2023-03-03Golang?中的json.Marshal問(wèn)題總結(jié)(推薦)
這篇文章主要介紹了Golang中的json.Marshal問(wèn)題總結(jié),本文通過(guò)一個(gè)例子給大家詳細(xì)講解,本次提出的問(wèn)題中,我們不難注意到其中的time.Time是一個(gè)匿名(Anonymous)字段,而這個(gè)就是答案的由來(lái),需要的朋友可以參考下2022-06-06goland 實(shí)現(xiàn)自動(dòng)格式化代碼
這篇文章主要介紹了goland 實(shí)現(xiàn)自動(dòng)格式化代碼的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04使用Go語(yǔ)言創(chuàng)建error的幾種方式小結(jié)
Go語(yǔ)言函數(shù)(或方法)是支持多個(gè)返回值的,因此在Go語(yǔ)言的編程哲學(xué)中,函數(shù)的返回值的最后一個(gè)通常都是error類(lèi)型,所以本文給大家介紹了使用Go語(yǔ)言創(chuàng)建error的幾種方式小結(jié),文中通過(guò)代碼示例講解的非常詳細(xì),需要的朋友可以參考下2024-01-01一文帶你了解Go語(yǔ)言實(shí)現(xiàn)的并發(fā)神庫(kù)conc
前幾天逛github發(fā)現(xiàn)了一個(gè)有趣的并發(fā)庫(kù)-conc,這篇文章將為大家詳細(xì)介紹一下這個(gè)庫(kù)的實(shí)現(xiàn),文中的示例代碼講解詳細(xì),感興趣的可以了解一下2023-01-01詳解golang執(zhí)行Linux shell命令完整場(chǎng)景下的使用方法
本文主要介紹了golang執(zhí)行Linux shell命令完整場(chǎng)景下的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06Go語(yǔ)言異步API設(shè)計(jì)的扇入扇出模式詳解
這篇文章主要為大家介紹了Go語(yǔ)言異步API設(shè)計(jì)的扇入扇出模式示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08