Docker構(gòu)建kubectl鏡像的實(shí)現(xiàn)步驟
假如程序服務(wù)是使用 k8s 集成 gitlab ci/cd 方式部署的,在 gitlab-ci 過(guò)程中就需要用到 kubeclt 鏡像
使用 docker 構(gòu)建 kubectl 鏡像有兩種方式
方式一 (鏡像相對(duì)較小一點(diǎn),45.8M左右)
在 Linux 上使用 curl 安裝 kubectl 可執(zhí)行文件
cd /usr/local/bin curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.20.1/bin/linux/amd64/kubectl chmod +x ./kubectl
詳細(xì)參考 官方安裝文檔
接下來(lái)在 /usr/local/bin 目錄下新建 Dockerfile 文件,寫(xiě)入內(nèi)容如下
FROM alpine:latest COPY kubectl /usr/local/bin/ RUN chmod +x /usr/local/bin/kubectl
Dockerfile 文件建好后,在同目錄下執(zhí)行構(gòu)建命令
docker build -t registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 .
等待鏡像構(gòu)建完成
方式二(鏡像相對(duì)大一些,48.9M左右)
此方式相對(duì)方便一些,不過(guò)構(gòu)建比較慢,構(gòu)建過(guò)程中需要下載 kubectl 可執(zhí)行文件
直接新建 Dockerfile 文件,寫(xiě)入內(nèi)容如下
FROM alpine:latest RUN apk add --update -t deps curl RUN curl -L https://storage.googleapis.com/kubernetes-release/release/v1.20.1/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl \ && chmod +x /usr/local/bin/kubectl RUN apk del --purge deps \ && rm /var/cache/apk/*
在同目錄下執(zhí)行構(gòu)建命令
docker build -t registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 .
最后
1、測(cè)試構(gòu)建的鏡像是否可以正常使用
docker run -it registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 kubectl version --client
輸出內(nèi)容如下即構(gòu)建的鏡像可以正常使用
Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.1", GitCommit:"c4d752765b3bbac2237bf87cf0b1c2e307844666", GitTreeState:"clean", BuildDate:"2020-12-18T12:09:25Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}
2、從Registry中拉取鏡像
docker pull registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1
3、將鏡像推送到Registry,[ImageId] 替換成對(duì)應(yīng)的鏡像ID
docker login --username=用戶(hù)名 registry.cn-hangzhou.aliyuncs.com docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 docker push registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1
到此這篇關(guān)于Docker構(gòu)建kubectl鏡像的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Docker構(gòu)建kubectl鏡像內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。