k8s :從原始碼構建 二進位 安裝包

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

前言

本文介紹如何從原始碼構建 k8s 二進位安裝包

準備工作

作業系統 cenos7.x

安裝 docker

參考 官網 或網上各路教程

下載原始碼

$ cd /opt/$ git clone https://github.com/kubernetes/kubernetes.git

checkout

$ cd /opt/kubernetes
$ git checkout v1.8.4 -b v1.8.4

準備基礎 docker 鏡像

如果直接構建的話會發現會卡在那動不了,原因是構建指令碼會從 gcr(google container registry)拉取構建需要的基礎鏡像,而且是強制拉取...,如果沒有 VPN 的話就悲劇了。有兩種方法:

  • 從 Docker Hub 上 pull 別人上傳的鏡像然後在本地打上 tag
  • 從 kubernetes 原始碼構建出基礎鏡像

這裡僅介紹方法 2

$ docker pull mirrorgooglecontainers/kube-cross:v1.8.3-2$ docker tag mirrorgooglecontainers/kube-cross:v1.8.3-2 gcr.io/google_containers/kube-cross:v1.8.3-2$ docker pull mirrorgooglecontainers/debian-iptables-amd64:v8$ docker tag mirrorgooglecontainers/debian-iptables-amd64:v8 gcr.io/google_containers/debian-iptables-amd64:v8

修改 build/lib/release.sh

去掉 docker build 命令的 --pull 選項,不然還是會從 gcr 拉取鏡像...

index 3134e4d..e1881b4 100644--- a/build/lib/release.sh+++ b/build/lib/release.sh@@ -323,7 +323,7 @@ function kube::release::create_docker_images_for_server() {         ln ${binary_dir}/${binary_name} ${docker_build_path}/${binary_name}         printf " FROM ${base_image} \n ADD ${binary_name} /usr/local/bin/${binary_name}\n" > ${docker_file_path} -        "${DOCKER[@]}" build --pull -q -t "${docker_image_tag}" ${docker_build_path} >/dev/null+        "${DOCKER[@]}" build -q -t "${docker_image_tag}" ${docker_build_path} >/dev/null         "${DOCKER[@]}" save "${docker_image_tag}" > "${binary_dir}/${binary_name}.tar"         echo "${docker_tag}" > ${binary_dir}/${binary_name}.docker_tag         rm -rf ${docker_build_path}

構建

cd /opt/kubernetesmake quick-release

注意:quick-release 僅構建當前系統版本(例如 linux-amd64)

構建完成後會在 /opt/kubernetes/_output/release-tarts 目錄下產生 k8s 二進位安裝包:

kubernetes-client-linux-amd64.tar.gz(用戶端命令列工具)kubernetes-server-linux-amd64.tar.gz(master 和 node 節點 k8s 服務程式)kubernetes-src.tar.gz(k8s 原始碼包)kubernetes.tar.gz(master 和 node 節點 k8s 基礎包)

總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.