日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jre for mac 删除_在 Mac 的 Docker Desktop 中运行 K8s

發(fā)布時間:2024/9/27 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jre for mac 删除_在 Mac 的 Docker Desktop 中运行 K8s 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Docker Desktop for Mac 從 Docker Community Edition 18.06.0-ce-mac70 2018-07-25 版本起,添加了對 Kubernetes 的支持,可以方便的在 Mac 上運行一個單節(jié)點的 K8s 集群。

在 Docker Desktop 的 Preferences 中的 Kubernetes 頁面里,提供了一個 Enable Kubernetes 選框,點擊之后即可在 Mac 上啟動 K8s。

然而點擊之后,就沒有然后了,一直是下圖這個狀態(tài):

此問題的主要原因,是 K8s 運行所需的一些 k8s.gcr.io 下的鏡像,無法直接下載得到。

準備鏡像

配置鏡像服務

在 Preferences => Docker Engine 里,可以配置 registry-mirrors,國內可用的一些鏡像服務有:

  • 中國科大:https://docker.mirrors.ustc.edu.cn / https://ustc-edu-cn.mirror.aliyuncs.com

  • 阿里云:https://xxxxx.mirror.aliyuncs.com,可使用阿里云賬號在 這里 獲得

  • 網易云:https://hub-mirror.c.163.com

  • DaoCloud:http://f1361db2.m.daocloud.io

另外,中國科大還有 GCR 和 Quay 的鏡像。

可添加多個鏡像,如:

{ "registry-mirrors": [ "https://xxxxx.mirror.aliyuncs.com", "https://docker.mirrors.ustc.edu.cn", "https://hub-mirror.c.163.com", "http://f1361db2.m.daocloud.io" ], "debug": true, "experimental": true}

之后點擊 Apply & Restart 應用配置。

下載鏡像

在 阿里云容器服務的 GitHub 組織 下,有個 k8s-for-docker-desktop 倉庫即為解決此問題而存在。解決的方式為:先從阿里云下載所需的鏡像副本至本地,再將鏡像 tag 修改至 k8s.gcr.io 下。

以如下軟件版本為例:

可使用 當前 master 分支最新的內容,直接執(zhí)行 load_images.sh 完成鏡像的下載及 tag 修改。

下載之后的鏡像包括如下 8 個,與 images.properties 中內容一一對應:

$ docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEk8s.gcr.io/kube-proxy v1.19.3 cdef7632a242 3 weeks ago 118MBk8s.gcr.io/kube-apiserver v1.19.3 a301be0cd44b 3 weeks ago 119MBk8s.gcr.io/kube-controller-manager v1.19.3 9b60aca1d818 3 weeks ago 111MBk8s.gcr.io/kube-scheduler v1.19.3 aaefbfa906bd 3 weeks ago 45.7MBk8s.gcr.io/etcd 3.4.13-0 0369cf4303ff 2 months ago 253MBk8s.gcr.io/coredns 1.7.0 bfe3a36ebd25 4 months ago 45.2MBk8s.gcr.io/pause 3.2 80d28bedfe5d 8 months ago 683kBquay.io/kubernetes-ingress-controller/nginx-ingress-controller 0.26.1 29024c9c6e70 13 months ago 483MB

其他版本?

如果使用的不是上圖中的版本,且 k8s-for-docker-desktop 倉庫還沒有支持該版本時,可根據 K8s 版本通過如下方式獲得 images.properties 中對應版本信息:

安裝 K8s 對應版本的 kubeadm ,之后運行:

# 替換 ${KUBERNETES_VERSION} 為所使用的 K8s 版本$?./kubeadm?config?images?list?--kubernetes-version=${KUBERNETES_VERSION}

可得到類似如下信息:

k8s.gcr.io/kube-apiserver:v1.19.3
k8s.gcr.io/kube-controller-manager:v1.19.3
k8s.gcr.io/kube-scheduler:v1.19.3
k8s.gcr.io/kube-proxy:v1.19.3
k8s.gcr.io/pause:3.2
k8s.gcr.io/etcd:3.4.13-0
k8s.gcr.io/coredns:1.7.0

也可參照這個 entrypoint.sh 中的 內容 ,或直接從 這個 定期執(zhí)行的 GitHub Actions 記錄中找到對應版本執(zhí)行時的輸出信息,如 v1.19.3 記錄。

根據所得到的對應版本鏡像信息,修改 images.properties 文件中內容,再執(zhí)行 load_images.sh 即可。

依舊 Starting ?

在完成鏡像下載并重啟 Docker Desktop 之后,K8s 依舊停留在 Starting 狀態(tài)。

通過

$ pred='process matches ".*(ocker|vpnkit).*"
|| (process in {"taskgated-helper", "launchservicesd", "kernel"} && eventMessage contains[c] "docker")'/usr/bin/log stream --style syslog --level=debug --color=always --predicate "$pred"

查看日志,發(fā)現(xiàn)不斷輸出如下內容:

2020-11-07 01:01:48.307809+0800 localhost com.docker.driver.amd64-linux[2646]: cannot get lease for master node: an error on the server ("") has prevented the request from succeeding (get leases.coordination.k8s.io docker-desktop)
2020-11-07 01:01:48.308417+0800 localhost com.docker.backend[1833]: external: POST /events 200 "DockerDesktopGo" ""
2020-11-07 01:01:49.231052+0800 localhost com.docker.driver.amd64-linux[2646]: (libsystem_info.dylib) [com.apple.network.libinfo:getaddrinfo] nat64_v4_requires_synthesis(127.0.0.1) == false

按照 這里 及 這里 提到的方式,刪除掉 pki 文件夾:

$ rm -rf ~/Library/Group\ Containers/group.com.docker/pki/

之后再重啟并觀察日志,上述問題不再出現(xiàn),并且新下載了 3 個 desktop 相關的鏡像:

$ docker images | grep desktopdocker/desktop-kubernetes kubernetes-v1.19.3-cni-v0.8.5-critools-v1.17.0 7f85afe431d8 3 weeks ago 285MBdocker/desktop-storage-provisioner v1.1 e704287ce753 7 months ago 41.8MBdocker/desktop-vpnkit-controller v1.0 79da37e5a3aa 8 months ago 36.6MB

等待一會之后,終于變成 Running 狀態(tài)了!

Tips: 如果還是 Starting 狀態(tài),可以嘗試將當前安裝的 Docker Desktop 環(huán)境都清理掉,全新安裝一個穩(wěn)定版本,可能就不會有奇怪的問題了。

另外,在沒開啟?Preferences?=>?Kubernetes?中的?Show system containers (advanced)?選項時,docker ps?是看不到 K8s 相關的容器的。

總結

以上是生活随笔為你收集整理的jre for mac 删除_在 Mac 的 Docker Desktop 中运行 K8s的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。