国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

minikube代碼分析與Go語言 - 3

novo / 2225人閱讀

摘要:代碼分析參考博客源碼分析下載源碼可以從上下載編譯環(huán)境代碼下載到任意目錄,這里是設(shè)置環(huán)境變量,這里為這個(gè)目錄名很重要,的包都是以這個(gè)為基礎(chǔ)的鏈接到源碼目錄即可通過編譯

[TOC]

minikube代碼分析

參考博客: minikube 源碼分析

下載

minikube源碼可以從github上下載:

git clone git@github.com:kubernetes/minikube.git
編譯

環(huán)境:Ubuntu 16.04

# 代碼下載到任意目錄,這里是 /opt/kube/minikube

> export GOPATH=~/gol/  # 設(shè)置GOPATH環(huán)境變量,這里為 ~/gol
> mkdir -p ~/gol/src/k8s.io/  # k8s.io這個(gè)目錄名很重要,minikube的包都是以這個(gè)為基礎(chǔ)的
> cd ~/gol/src/k8s.io/
> ln -s /opt/kube/minikube/ minikube  # 鏈接到源碼目錄即可
> make  # 通過Makefile編譯

CGO_ENABLED=1 go build -tags static_build -ldflags="-X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitCommit=d6f433224538d4f9ca2f7ae19b252e6fcb66a3ae -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitVersion=v1.6.4 -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitTreeState=clean -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.buildDate=2017-07-06T18:19:23Z -X k8s.io/minikube/pkg/version.version=v0.20.0 -X k8s.io/minikube/pkg/version.isoVersion=v0.20.0 -X k8s.io/minikube/pkg/version.isoPath=minikube/iso -s -w -extldflags "-static"" -o ./out/localkube ./cmd/localkube
GOBIN=/home/stack/gol//bin go get github.com/jteeuwen/go-bindata/...
/home/stack/gol//bin/go-bindata -nomemcopy -o pkg/minikube/assets/assets.go -pkg assets ./out/localkube deploy/addons/...
CGO_ENABLED=1 GOARCH=amd64 GOOS=linux go build --installsuffix cgo -ldflags="-X k8s.io/minikube/pkg/version.version=v0.20.0 -X k8s.io/minikube/pkg/version.isoVersion=v0.20.0 -X k8s.io/minikube/pkg/version.isoPath=minikube/iso -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitCommit=d6f433224538d4f9ca2f7ae19b252e6fcb66a3ae -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitVersion=v1.6.4 -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitTreeState=clean -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.buildDate=2017-07-06T18:19:23Z" -a -o out/minikube-linux-amd64 k8s.io/minikube/cmd/minikube
cp ./out/minikube-linux-amd64 ./out/minikube

輸出信息要點(diǎn):

minikube 0.20.0默認(rèn)使用kubernetes v1.6.4

https://github.com/jteeuwen/go-bindata/下載了一個(gè)go-bindata

編譯的文件在out目錄下,體積都不小:

> ls -lh minikube/out
total 267M
-rwxrwxr-x  1 stack stack 116M 7月   6 18:33 localkube*
-rwxrwxr-x  1 stack stack  76M 7月   6 18:35 minikube*
-rwxrwxr-x  1 stack stack  76M 7月   6 18:35 minikube-linux-amd64*
文件

cmd目錄下是localkubeminikube程序的入口

cmd/minikube/cmd下是所有minikube子命令的實(shí)現(xiàn),每個(gè)文件對(duì)應(yīng)一個(gè)子命令

使用cobra庫來支持形如git的參數(shù)處理

Go項(xiàng)目一覽

項(xiàng)目 描述
Kubernetes 十分鐘帶你理解Kubernetes核心概念
Hugo 使用hugo搭建個(gè)人博客站點(diǎn)
rkt 三年后,我們從 Docker 轉(zhuǎn)到了 RKT
etcd etcd是什么東西?它和ZooKeeper有什么區(qū)別?
Moby 對(duì)于Docker改名Moby ,大家怎么看?
OpenShift OpenShift 3,紅帽將容器的力量交給了開發(fā)者
Delve Golang / Go調(diào)試工具delve
GopherJS 將GO編繹成JavaScript,用GO語言來寫前端代碼
CockroachDB CockroachDB —— 像小強(qiáng)一樣堅(jiān)不可摧的數(shù)據(jù)庫
Bleve full-text search and indexing for Go
ProjectAtomic 容器OS的選擇與使用
GiantSwarm 容器生態(tài)圈項(xiàng)目一覽
Nanopack The ideal platform for developers
rclone Rclone: 超好用的網(wǎng)盤 / VPS 數(shù)據(jù)同步、備份工具
更新k8s

參考文檔:minikube/docs/contributors/updating_kubernetes.md

> ~/gol/src/k8s.io/minikube  # 先進(jìn)入到 minikube 代碼目錄

> go get github.com/tools/godep  # 需要godep,默認(rèn)下載到$GOPATH/bin
> ./hack/godeps/godep-restore.sh  # 下載Kubernetes
Go語言簡(jiǎn)介 3 - 數(shù)據(jù)類型

Go的類型分為四類:

基本類型: 數(shù)字、字符串和布爾值

聚合類型: 數(shù)組和結(jié)構(gòu)體

引用類型: 指針、列表、字典、函數(shù)和管道

接口類型: 接口

Go的數(shù)學(xué)、邏輯和比較運(yùn)算符跟C相同,優(yōu)先級(jí)也一樣

不同類型之間要做顯式轉(zhuǎn)換,mismatched types int32 and int16

任何類型都支持轉(zhuǎn)換操作T(x)

rune是支持Unicode的單個(gè)字符類型

float類型通過math包支持IEEE 754規(guī)范(一如既往的詭異)

原書給了一個(gè){{BANNED}}的例子演示生成三維曲面,用go get gopl.io/ch3/surface/可以拿下來看看...(書中還附帶講了一下三維空間和等軸投影,這樣真的適合用在基礎(chǔ)語言教程里么...TLTD;

支持復(fù)數(shù)(例程是用代碼生成mandelbrot分形...這是圖形學(xué)的書吧)

bool類型和數(shù)字類型0, 1之間沒有隱式轉(zhuǎn)換

字符串是字節(jié)的集合,可以包含0,默認(rèn)UTF-8編碼

字符串支持切分,如s[:5], s[7:], s[:],跟Python類似

轉(zhuǎn)義字符跟C一樣,解釋也一樣 ...

`` 反引號(hào)表示原義字符,沒有轉(zhuǎn)義,可以用于正則、模板等

bytes, strings, strconv, unicode是字符串操作特別重要的四個(gè)包

常量支持布爾、字符串和數(shù)字

iota是常量生成器,初始為0,其余每一項(xiàng)遞增

type Weekday int
const (
    Sunday Weekday = iota   // 0
    Monday                  // 1
    Tuesday                 // 2 ...
    Wednesday
    Thursday
    Friday
    Saturday
)

常量可以無類型,運(yùn)算時(shí)適配當(dāng)前類型

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/32567.html

相關(guān)文章

  • minikube代碼分析Go語言 - 1

    摘要:閑言最近需要看簡(jiǎn)寫為和相關(guān)的技術(shù)資料,順帶學(xué)一下語言。語言始于年月的三個(gè)工程師,年月正式宣布。項(xiàng)目包括語言工具和標(biāo)準(zhǔn)庫,以及一切從簡(jiǎn)的理念。語言本身成熟且穩(wěn)定,并且保證向下兼容。 [TOC] 閑言 最近需要看Kubernetes(簡(jiǎn)寫為k8s)和docker相關(guān)的技術(shù)資料,順帶學(xué)一下Go語言。 嘗試了通過minikube部署遇到鏡像下載和網(wǎng)絡(luò)配置等等各種問題。雖然k8s很火熱,但是資料...

    vspiders 評(píng)論0 收藏0
  • 前端需要了解的 Docker Kubernetes 知識(shí)

    摘要:打開終端執(zhí)行,再開一個(gè)終端輸入輸出,則表示該服務(wù)沒有問題。將服務(wù)打包成鏡像,然后將鏡像實(shí)例化并運(yùn)行,方便部署。此處以我的賬號(hào)為例,需要推送到你自己的賬號(hào)。是一種自動(dòng)化運(yùn)維工具,本文主要需要了解,,三個(gè)概念。至此成功使用部署應(yīng)用。 本文將以一個(gè)簡(jiǎn)單的示例演示如何使用 Docker 與 Kubernetes 部署應(yīng)用上線。 Http Service 首先使用 Go 語言搭建一個(gè)簡(jiǎn)單的 Ht...

    ChristmasBoy 評(píng)論0 收藏0
  • 前端需要了解的 Docker Kubernetes 知識(shí)

    摘要:打開終端執(zhí)行,再開一個(gè)終端輸入輸出,則表示該服務(wù)沒有問題。將服務(wù)打包成鏡像,然后將鏡像實(shí)例化并運(yùn)行,方便部署。此處以我的賬號(hào)為例,需要推送到你自己的賬號(hào)。是一種自動(dòng)化運(yùn)維工具,本文主要需要了解,,三個(gè)概念。至此成功使用部署應(yīng)用。 本文將以一個(gè)簡(jiǎn)單的示例演示如何使用 Docker 與 Kubernetes 部署應(yīng)用上線。 Http Service 首先使用 Go 語言搭建一個(gè)簡(jiǎn)單的 Ht...

    孫吉亮 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<