Client-go 的開發
===
## 目錄
[TOC]
## 下載Client-go
**<需先安裝好go語言環境>**
Client-go官方: https://github.com/kubernetes/client-go
使用官方的說明確定好所需的版本
在你的GO語言工作目錄開一個新的資料夾,然後在此資料夾進行以下操作
使用Go modules
(此步驟會下載一個go.mod 定義文件)
```
export GO111MODULE=on
go mod init
```
下載原始碼(此部分是按照官方的說明)
要指定client-go 跟k8s的版本
如果所下載的client-go是12以前的版本,還要另外下載api與apimachinery! 如下
```
go get k8s.io/client-go@v11.0.0 # replace v11.0.0 with the required version (or use kubernetes-1.x.y tags if desired)
go get k8s.io/api@kubernetes-1.14.0 # replace kubernetes-1.14.0 with the required version
go get k8s.io/apimachinery@kubernetes-1.14.0 # replace kubernetes-1.14.0 with the required version
```
這些東西會下載到$GOPATH/pkg/mod底下
## 運行範例(out-of-cluster-client-configuration)
使用官方提供的範例做練習
client-go的目錄: /examples/out-of-cluster-client-configuration
提供一個叢集外的範例,我們可以複製此範例到我們剛才的工作目錄
下build指令
這個步驟會下載所需的東西到pkg/mod,並且在go.mod文件中紀錄
```
go build -o app .
```
運行程式
```
./app
```