最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker部署Go項(xiàng)目發(fā)布鏡像到倉庫

 更新時(shí)間:2023年03月07日 16:39:40   作者:JK凱  
這篇文章主要為大家介紹了Docker部署Go項(xiàng)目發(fā)布鏡像到倉庫示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

大家都知道Go編譯后是可執(zhí)行的二進(jìn)制文件,一般我們的項(xiàng)目會部署在Linux中,Docker也是現(xiàn)在常用的部署方案,伸縮擴(kuò)容、遷移都更方便。該篇文章教大家使用Docker來部署go項(xiàng)目,最后把Docker鏡像發(fā)布啊鏡像倉庫(這里使用阿里云鏡像倉庫),公司內(nèi)部一般發(fā)布到公司私有鏡像倉庫,方便其他服務(wù)器拉取鏡像部署等。

一、安裝 Docker

linux服務(wù)器使用curl下載快速安裝的shell腳本

curl -fsSL get.docker.com -o get-docker.sh

下載完成后,可以ls命令查看一下。已經(jīng)存在的話,使用sh命令執(zhí)行這個腳本

sh get-docker.sh

注意如果不是root用戶,需要使用sudo su獲取超級管理員權(quán)限。

安裝完成后啟動一下Docker Server

systemctl start docker

使用docker version命令能看到ClientServer就啟動成功了。

二、使用 Docker 部署 Go 項(xiàng)目

這里我使用一個自己開發(fā)的Gin項(xiàng)目,首先在項(xiàng)目跟目錄下創(chuàng)建一個Dockerfile文件

寫入以下內(nèi)容:

# 指定基礎(chǔ)的go編譯鏡像
FROM golang:alpine as build
# 指定go的環(huán)境變量
ENV GOPROXY=https://goproxy.cn \
    GO111MODULE=on \
    CGO_ENABLED=0 \
    GOOS=linux \
    GOARCH=amd64
# 指定工作空間目錄,會自動cd到這個目錄
WORKDIR /build
# 把項(xiàng)目的依賴配置文件拷貝到容器中,并下載依賴
COPY go.mod .
COPY go.sum .
RUN go mod download
# 把項(xiàng)目的其他所有文件拷貝到容器中
COPY . .
# 編譯成可執(zhí)行二進(jìn)制文件
RUN go build -o app .
# 指定新的運(yùn)行環(huán)境,最終的運(yùn)行會基于這個壞境,使得最終的鏡像非常小
FROM scratch as deploy
# 把編譯環(huán)境中打包好的可執(zhí)行文件和配置文件拷貝到當(dāng)前鏡像
COPY --from=build /build/app /
COPY --from=build /build/conf ./conf
CMD ["/app"]

在項(xiàng)目根目錄使用以下命令來構(gòu)建鏡像

docker build -t gotodo .

構(gòu)建好后使用docker images來查看我們打包好的鏡像

最終運(yùn)行容器:

docker run -itd -p 7000:7000 gotodo

三、上傳鏡像到鏡像倉庫

把我們構(gòu)建好的鏡像上傳到鏡像倉庫,方便我們跨服務(wù)器部署或伸縮容等,這里我使用阿里云個人免費(fèi)鏡像倉庫演示,公司內(nèi)部一般搭建私有的鏡像倉庫(與阿里云鏡像倉庫同理)。

首先去阿里云申請并創(chuàng)建下個人免費(fèi)鏡像倉庫,具體申請方法可百度等,很簡單。

創(chuàng)建時(shí)代碼源選擇本地倉庫

創(chuàng)建好后如下:

我們參考3.將鏡像推送到Registry

  • 首先用docker login在本地登錄
  • 再使用docker tag對我們剛才的鏡像重新打一個tag

  • 使用docker push把重新打好tag的鏡像上傳到倉庫

上傳完成后可以在阿里云上看到版本等

最后其他服務(wù)器想拉取這個鏡像也很簡單,直接

docker pull registry.cn-hangzhou.aliyuncs.com/junkaione/gotodo:v1.0.0

運(yùn)行容器

docker run -itd -p 7000:7000 registry.cn-hangzhou.aliyuncs.com/junkaione/gotodo:v1.0.0

到此,使用 Docker 來部署我們的 Go 項(xiàng)目,及把打包后的鏡像上傳到鏡像倉庫的文章就結(jié)束了,更多關(guān)于Docker部署Go發(fā)布鏡像倉庫的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 防火墻控制Docker端口開放與關(guān)閉

    防火墻控制Docker端口開放與關(guān)閉

    本文主要介紹了防火墻控制Docker端口開放與關(guān)閉,通過實(shí)例演示了如何配置防火墻規(guī)則來實(shí)現(xiàn)對Docker端口的控制,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-12-12
  • 解決Docker報(bào)錯:“docker build“ requires exactly 1 argument.

    解決Docker報(bào)錯:“docker build“ requires exactly&nb

    這篇文章主要介紹了解決Docker報(bào)錯:“docker build“ requires exactly 1 argument.具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • docker安裝MinIO全過程

    docker安裝MinIO全過程

    這篇文章主要介紹了docker安裝MinIO全過程,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Docker保存鏡像和導(dǎo)入鏡像文件完整圖文教程

    Docker保存鏡像和導(dǎo)入鏡像文件完整圖文教程

    這篇文章主要給大家介紹了關(guān)于Docker保存鏡像和導(dǎo)入鏡像文件的完整圖文教程,適用于備份、遷移和版本控制等場景,文中通過代碼及圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • 從入門到精通Docker Compose 輕松部署微服務(wù)實(shí)戰(zhàn)教程

    從入門到精通Docker Compose 輕松部署微服務(wù)實(shí)戰(zhàn)教程

    本文介紹使用Docker Compose部署基于SpringCloudAlibaba的微服務(wù)項(xiàng)目,涵蓋用戶登錄積分功能,涉及Gateway、Redis、MySQL等組件,通過編寫Dockerfile和YAML配置文件,結(jié)合腳本實(shí)現(xiàn)環(huán)境容器與服務(wù)容器的自動化部署與驗(yàn)證,感興趣的朋友一起看看吧
    2025-07-07
  • Docker安裝Oracle_11g的方法

    Docker安裝Oracle_11g的方法

    這篇文章主要介紹了Docker安裝Oracle_11g的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • Linux下docker安裝mysql8并配置遠(yuǎn)程連接

    Linux下docker安裝mysql8并配置遠(yuǎn)程連接

    本文主要介紹了Linux下docker安裝mysql8并配置遠(yuǎn)程連接,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 解讀docker運(yùn)行時(shí)-itd參數(shù)是什么意思

    解讀docker運(yùn)行時(shí)-itd參數(shù)是什么意思

    在Docker中,-itd參數(shù)組合用于在后臺運(yùn)行一個交互式容器,同時(shí)保持標(biāo)準(zhǔn)輸入和分配偽終端,這種方式適合需要在后臺運(yùn)行容器并保持交互能力的場景
    2025-03-03
  • Docker 教程之倉庫配置文件詳解

    Docker 教程之倉庫配置文件詳解

    這篇文章主要介紹了Docker 教程之倉庫配置文件詳解的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • docker-compose搭建mongodb、mysql的詳細(xì)過程

    docker-compose搭建mongodb、mysql的詳細(xì)過程

    這篇文章主要介紹了docker-compose搭建mongodb、mysql的詳細(xì)過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11

最新評論

张家界市| 德令哈市| 尚义县| 唐河县| 兴山县| 平塘县| 奈曼旗| 德安县| 云和县| 临夏市| 淮安市| 类乌齐县| 潮安县| 紫云| 仙居县| 吐鲁番市| 平陆县| 巫山县| 黄平县| 灵丘县| 淳安县| 顺昌县| 冷水江市| 如东县| 洪江市| 高安市| 滦平县| 宜宾市| 逊克县| 通江县| 太湖县| 泸定县| 溧水县| 青河县| 邵武市| 长子县| 新民市| 涟水县| 巩义市| 惠东县| 刚察县|