您好,登錄后才能下訂單哦!
怎么在Docker中構建一個kubectl鏡像?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
方式一 (鏡像相對較小一點,45.8M左右)
在 Linux 上使用 curl 安裝 kubectl 可執行文件
cd /usr/local/bin curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.20.1/bin/linux/amd64/kubectl chmod +x ./kubectl
詳細參考 官方安裝文檔
接下來在 /usr/local/bin 目錄下新建 Dockerfile 文件,寫入內容如下
FROM alpine:latest COPY kubectl /usr/local/bin/ RUN chmod +x /usr/local/bin/kubectl
Dockerfile 文件建好后,在同目錄下執行構建命令
docker build -t registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 .
等待鏡像構建完成
此方式相對方便一些,不過構建比較慢,構建過程中需要下載 kubectl 可執行文件
直接新建 Dockerfile 文件,寫入內容如下
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/*
在同目錄下執行構建命令
docker build -t registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 .
1、測試構建的鏡像是否可以正常使用
docker run -it registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 kubectl version --client
輸出內容如下即構建的鏡像可以正常使用
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] 替換成對應的鏡像ID
docker login --username=用戶名 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
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。