|NO.Z.00370|——————————|^^ 配置 ^^|——|KuberNetes&CI/CD.V08|-----------------------------------------------------------|Jenkins.v07|aliyun映象倉庫配置.v01|
阿新 • • 發佈:2022-04-01
[CloudNative:KuberNetes&CI/CD.V08] [Applications.KuberNetes] [|Jenkins|aliyun映象倉庫配置|獲取阿里雲映象tags|獲取harbor映象tags|jq命令安裝教程|]
一、阿里雲映象倉庫配置
二、測試阿里雲映象倉庫是否可以使用### --- 阿里雲映象倉庫: ~~~ # 若是有harbor也是可以的,它倆原理是一樣的 https://cr.console.aliyun.com/cn-beijing/instances/namespaces
三、配置AccessKey:### --- 登入阿里雲映象倉庫 ~~~ 說明登入成功 ~~~ 若是自建harbor把這個地址更改為harbor地址即可 [root@k8s-master01 ~]# docker login --username=yanqi_vip registry.cn-beijing.aliyuncs.com Password: WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded
### --- 配置AccessKey:
~~~ 動態獲取阿里雲映象倉庫的映象版本號
~~~ 需要應用到阿里雲客戶端工具,若是使用harbor的話,直接使用curl即可
~~~ 頭像——>AccessKey管理——>安全資訊管理——>建立AccessKey:收集驗證通過
~~~ ——>b儲存AK資訊——>檢視AccessKey ID和AccessKey Secret——>END
四、安裝阿里雲客戶端CLI:linux下配置### --- 在Linux下安裝阿里雲的CLI(阿里雲客戶端工具) ~~~ 地址:https://help.aliyun.com/document_detail/121541.html——>官網:下載CLI客戶端包 ~~~ 阿里雲客戶端工具最好是和Jenkins安裝在同一節點, ~~~ 因為客戶端工具是在Jenkins上選擇映象的版本,所以最好是在jenkins上安裝。 ~~~ 後期可以直接使用jenkins直接呼叫系統的命令即可
### --- 下載阿里雲CLI客戶端工具
[root@k8s-node01 CICD]# wget "https://aliyuncli.alicdn.com/aliyun-cli-linux-latest-amd64.tgz?spm=a2c4g.11186623.2.3.1e525d40SxhbVk&file=aliyun-cli-linux-latest-amd64.tgz"
### --- 解壓阿里雲CLI客戶端工具
[root@k8s-node01 CICD]# tar xf aliyun-cli-linux-latest-amd64.tgz\?spm\=a2c4g.11186623.2.3.1e525d40SxhbVk\&file\=aliyun-cli-linux-latest-amd64.tgz
### --- 測試是否可以使用
[root@k8s-node01 CICD]# ./aliyun
### --- cp到執行目錄下
[root@k8s-node01 CICD]# cp aliyun /usr/local/sbin/
### --- 測試aliyun客戶端工具
[root@k8s-node01 ~]# aliyun --h
五、配置阿里雲AccessKey
### --- 安裝阿里雲AccessKey
~~~ 說明配置成功
[root@k8s-node01 ~]# aliyun configure
Configuring profile 'default' in 'AK' authenticate mode...
Access Key Id []: LTAI5tMxP3cur3xS4XNC8fSU // Access key ID
Access Key Secret []: olKxiz9RZOcR7gKvoGOwPFIqBZVqge // Access Key Secret
Default Region Id []: cn-hangzhou // Region ID地址:最好選擇所在區域的地址,若是選擇其它地址,需要endpoints來指定
Default Output Format [json]: json (Only support json)
Default Language [zh|en] zh: zh // 語言:中文
Saving profile[default] ...Done.
Configure Done!!!
..............888888888888888888888 ........=8888888888888888888D=..............
...........88888888888888888888888 ..........D8888888888888888888888I...........
.........,8888888888888ZI: ...........................=Z88D8888888888D..........
.........+88888888 ..........................................88888888D..........
.........+88888888 .......Welcome to use Alibaba Cloud.......O8888888D..........
.........+88888888 ............. ************* ..............O8888888D..........
.........+88888888 .... Command Line Interface(Reloaded) ....O8888888D..........
.........+88888888...........................................88888888D..........
..........D888888888888DO+. ..........................?ND888888888888D..........
...........O8888888888888888888888...........D8888888888888888888888=...........
............ .:D8888888888888888888.........78888888888888888888O ..............
### --- 阿里雲映象版本庫中建立名稱空間,並匯入AccessKey
~~~ 建立名稱空間——>kubernetes_guide——>確定——>END
~~~ 建立映象倉庫——>地域:華北2(北京)——>名稱空間:yanqi_vip
~~~ ——>倉庫名稱:spring-cloud-demo-eureka——>摘要:java應用部署——>下一步
~~~ ——>本地倉庫——>建立映象倉庫——>END
六、獲取映象倉庫的tags
### --- 檢視幫助資訊
[root@k8s-node01 ~]# aliyun cr GetRepoTags --help
~~~ 阿里雲CLI命令列工具 3.0.80
Product: cr (容器映象服務)
Method: GET
PathPattern: /repos/[RepoNamespace]/[RepoName]/tags
Parameters:
--RepoName String Required // 映象名稱
--RepoNamespace String Required // 映象名稱空間
--Page Integer Optional
--PageSize Integer Optional
### --- 獲取spring-cloud-demo-eureka映象倉庫的tags
~~~ # 複製映象倉庫的公網地址:
~~~ registry.cn-beijing.aliyuncs.com/java-demo-yanqi/spring-cloud-demo-eureka
~~~ cr:映象容器服務
~~~ 可以看到有2個映象
[root@k8s-node01 ~]# aliyun cr GetRepoTags --RepoNamespace yanqi_vip --RepoName spring-cloud-demo-eureka
{
"data": {
"page": 1,
"pageSize": 30,
"tags": [
{
"digest": "72e066b341fd0c5b3c60d213ef7a6c3269a268f8c93f986a16231d4f201c1557",
"imageCreate": 1624862261000,
"imageId": "dea406b60b81bbb1b8998ab870a80de168417f68d6ed5e9a61c65ba09c39995b",
"imageSize": 296582033,
"imageUpdate": 1624862271000,
"status": "NORMAL",
"tag": "20210622-210506-b2a0f8e-pipeline-test"
},
{
"digest": "c2cd638510f5c794ca5cfb242b1b32d3b0334490e66589fa02fb625a76d5ca49",
"imageCreate": 1624862176000,
"imageId": "37a51a8717bd2ea91573a005f151dbb4e711c4e55159938909b71f800e627f5a",
"imageSize": 296582025,
"imageUpdate": 1624862193000,
"status": "NORMAL",
"tag": "20210623-114026-b2a0f8e-pipeline-test"
}
],
"total": 2
}
}
七、獲取映象tags
### --- 獲取阿里雲映象tags
~~~ # 獲取映象的tags值:使用jq命令取data下的tags值
~~~ []表示集合
~~~ -r去掉引號
~~~ 通過這種方式就可以把映象的tags提取出來,
~~~ 然後在jenkins上進行選擇需要的版本進行發版
[root@k8s-node01 jq]# aliyun cr GetRepoTags --RepoNamespace yanqi_vip --RepoName spring-cloud-demo-eureka | jq " .data.tags[].tag" -r
20210622-210506-b2a0f8e-pipeline-test
20210623-114026-b2a0f8e-pipeline-test
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
來自為知筆記(Wiz)