goland把go項(xiàng)目打包進(jìn)docker鏡像的全過程記錄
1. goland配置Dockerfile
項(xiàng)目中新建Dockerfile文件

配置Dockerfile

在項(xiàng)目中新建Dockerfile 文件,內(nèi)容如下
FROM golang:alpine
ENV GO111MODULE=on \
CGO_ENABLE=0 \
GOOS=linux \
GOARCH=amd64 \
GOPROXY="https://goproxy.cn,direct"
WORKDIR /goweb
COPY out/* ./app
EXPOSE 8088
CMD ["/goweb/app"]
第一行表示基于golang的環(huán)境鏡像構(gòu)建自己的docker
第二行配置go的環(huán)境
WORKDIR 表示項(xiàng)目放入容器中的什么地方,就是工作目錄,WORKDIR指定的工作目錄具有傳遞性,很多個(gè)WORKDIR的命令是關(guān)系的,比如首次指定工作目錄是 /goweb, 那么下邊下面那一行的COPY命令的 ./app 就是在/goweb下進(jìn)行的相對路徑
COPY表示把本地的文件復(fù)制到容器內(nèi)EXPOSE表示暴露什么端口,這個(gè)好像僅僅是給人看的,沒啥用CMD表示基于鏡像構(gòu)建容器的時(shí)候,執(zhí)行什么命令
2. goland構(gòu)建項(xiàng)目
編輯構(gòu)建參數(shù)

這樣構(gòu)建之后的產(chǎn)物就會在out文件夾里邊,然后Dockerfile去out文件夾COPY產(chǎn)物,復(fù)制到docker容器內(nèi)
3. Dockerfile執(zhí)行

點(diǎn)擊這里的運(yùn)行就可以

登錄Linux可以看到我們的docker


總結(jié)
到此這篇關(guān)于goland把go項(xiàng)目打包進(jìn)docker鏡像的文章就介紹到這了,更多相關(guān)goland go項(xiàng)目打包docker鏡像內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
go slice 數(shù)組和切片使用區(qū)別示例解析
這篇文章主要為大家介紹了go slice 數(shù)組和切片使用區(qū)別示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
golang?gorm模型結(jié)構(gòu)體的定義示例
這篇文章主要為大家介紹了golang?gorm模型結(jié)構(gòu)體的定義示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04
一文帶你搞懂Golang依賴注入的設(shè)計(jì)與實(shí)現(xiàn)
在現(xiàn)代的 web 框架里面,基本都有實(shí)現(xiàn)了依賴注入的功能,可以讓我們很方便地對應(yīng)用的依賴進(jìn)行管理。今天我們來看看 go 里面實(shí)現(xiàn)依賴注入的一種方式,感興趣的可以了解一下2023-01-01
VSCode1.4 搭建Golang的開發(fā)調(diào)試環(huán)境(遇到很多問題)
這篇文章主要介紹了VSCode1.4 搭建Golang的開發(fā)調(diào)試環(huán)境(遇到很多問題),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04

