KubeFlow 1.2.0镜像缓存(持续更新)

KubeFlow 1.2.0镜像比较多,存在多个docker仓库中,其中部分访问不可达。这里介绍其缓存方法,可以加速KubeFlow部署的过程。本文实现了一个镜像名称的自动提取脚本。

1、准备配置文件

wget https://raw.githubusercontent.com/kubeflow/manifests/v1.2-branch/kfdef/kfctl_k8s_istio.v1.2.0.yaml

修改其中的 manifest source为本地文件(先下载到本地):

  repos:
  - name: manifests
    uri: file:/home/supermap/openthings/kubeflow/v1.2.0.tar.gz
  version: v1.2-branch

改完后的kfctl_k8s_istio.v1.2.0.yaml长这样:

apiVersion: kfdef.apps.kubeflow.org/v1
kind: KfDef
metadata:
  clusterName: kubernetes
  creationTimestamp: null
  name: kubeflow
  namespace: kubeflow
spec:
  applications:
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: namespaces/base
    name: namespaces
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: application/v3
    name: application
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/istio-1-3-1-stack
    name: istio-stack
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/cluster-local-gateway-1-3-1
    name: cluster-local-gateway
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: istio/istio/base
    name: istio
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/cert-manager-crds
    name: cert-manager-crds
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/cert-manager-kube-system-resources
    name: cert-manager-kube-system-resources
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/cert-manager
    name: cert-manager
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/add-anonymous-user-filter
    name: add-anonymous-user-filter
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: metacontroller/base
    name: metacontroller
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: admission-webhook/bootstrap/overlays/application
    name: bootstrap
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/spark-operator
    name: spark-operator
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes
    name: kubeflow-apps
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: knative/installs/generic
    name: knative
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: kfserving/installs/generic
    name: kfserving
  - kustomizeConfig:
      repoRef:
        name: manifests
        path: stacks/kubernetes/application/spartakus
    name: spartakus
  repos:
  - name: manifests
    uri: file:/home/supermap/openthings/kubeflow/v1.2.0.tar.gz
  version: v1.2-branch
status:
  reposCache:
  - localPath: '".cache/manifests/manifests-1.2.0"'
    name: manifests

把其中的 manifest下载下来:

wget https://github.com/kubeflow/manifests/archive/v1.2.0.tar.gz

然后,执行安装到Kubernetes集群:

kubectl apply -f kfctl_k8s_istio.v1.2.0.yaml

安装完后,会发现kubectl get pod -n kubeflow得到的pod没有正常启动,主要是因为镜像下载失败。

2、创建镜像缓存脚本

下一步我们创建脚本,把镜像缓存到本地。下面是使用Jupyter Lab来完成的脚本。

  • 提取deployment的镜像:
%%bash
#提取deployment的镜像
depl=$(kubectl get deployment -n kubeflow -oname)
echo "#deployment " > imgs_list.txt
for d in ${depl}
do
    dimgs=$(kubectl describe $d -n kubeflow | grep "Image")
    dimg=(${dimgs//: / }) #(${dimgs//:/})
    #echo $dimg
    image_name=${dimg[1]}
    echo "docker pull "$image_name >> imgs_list.txt
    echo "docker tag "$image_name >> imgs_list.txt
done
  • 提取replicaset的镜像:
%%bash
#提取replicaset的镜像
depl=$(kubectl get replicaset -n kubeflow -oname)
echo "#replicaset " >> imgs_list.txt
for d in ${depl}
do
    dimgs=$(kubectl describe $d -n kubeflow | grep "Image")
    dimg=(${dimgs//: / }) #(${dimgs//:/})
    #echo $dimg
    image_name=${dimg[1]}
    echo "docker pull "$image_name >> imgs_list.txt
    echo "docker tag "$image_name >> imgs_list.txt
done
  • 提取statefulset的镜像:
%%bash
#提取statefulset的镜像
depl=$(kubectl get statefulset -n kubeflow -oname)
echo "#statefulset " >> imgs_list.txt
for d in ${depl}
do
    dimgs=$(kubectl describe $d -n kubeflow | grep "Image")
    dimg=(${dimgs//: / }) #(${dimgs//:/})
    #echo $dimg
    image_name=${dimg[1]}
    echo "docker pull "$image_name >> imgs_list.txt
    echo "docker tag "$image_name >> imgs_list.txt
done

通过上面的操作,所有kubeflow需要的镜像名称被提取到了imgs_list.txt文件中。

3、pull images list 以及 push 到 aliyun

修改脚本,把镜像pull下来,然后push到aliyun的镜像仓库,其它节点就可以从aliyun直接拉取了。

注意:以下脚本需要修改成自己的镜像仓库名称,有的仓库需要提前登录。

#deployment 
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f xxx
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#replicaset 
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#statefulset 
docker pull gcr.io/kubeflow-images-public/ingress-setup:latest
docker tag gcr.io/kubeflow-images-public/ingress-setup:latest
docker pull gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker tag gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker pull gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker tag gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker pull metacontroller/metacontroller:v0.3.0
docker tag metacontroller/metacontroller:v0.3.0

4、从aliyun拉取到本地

从aliyun拉取到本地,然后tag为原来的名称。

注意:改为自己的镜像仓库名称。

#deployment 
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag xxx gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f 
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#replicaset 
docker pull gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker tag gcr.io/kubeflow-images-public/admission-webhook:vmaster-ge5452b6f
docker pull argoproj/argoui:v2.3.0
docker tag argoproj/argoui:v2.3.0
docker pull gcr.io/ml-pipeline/cache-deployer:1.0.4
docker tag gcr.io/ml-pipeline/cache-deployer:1.0.4
docker pull gcr.io/ml-pipeline/cache-server:1.0.4
docker tag gcr.io/ml-pipeline/cache-server:1.0.4
docker pull gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker tag gcr.io/kubeflow-images-public/centraldashboard:vmaster-g8097cfeb
docker pull gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker tag gcr.io/kubeflow-images-public/jupyter-web-app:vmaster-g845af298
docker pull docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-controller:v1beta1-a96ff59
docker pull docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-db-manager:v1beta1-a96ff59
docker pull mysql:8
docker tag mysql:8
docker pull docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker tag docker.io/kubeflowkatib/katib-ui:v1beta1-a96ff59
docker pull python:3.7
docker tag python:3.7
docker pull mysql:8.0.3
docker tag mysql:8.0.3
docker pull gcr.io/ml-pipeline/envoy:metadata-grpc
docker tag gcr.io/ml-pipeline/envoy:metadata-grpc
docker pull gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker tag gcr.io/tfx-oss-public/ml_metadata_store_server:v0.21.1
docker pull gcr.io/ml-pipeline/metadata-writer:1.0.4
docker tag gcr.io/ml-pipeline/metadata-writer:1.0.4
docker pull gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker tag gcr.io/ml-pipeline/minio:RELEASE.2019-08-14T20-37-41Z-license-compliance
docker pull gcr.io/ml-pipeline/api-server:1.0.4
docker tag gcr.io/ml-pipeline/api-server:1.0.4
docker pull gcr.io/ml-pipeline/persistenceagent:1.0.4
docker tag gcr.io/ml-pipeline/persistenceagent:1.0.4
docker pull gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker tag gcr.io/ml-pipeline/scheduledworkflow:1.0.4
docker pull gcr.io/ml-pipeline/frontend:1.0.4
docker tag gcr.io/ml-pipeline/frontend:1.0.4
docker pull gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker tag gcr.io/ml-pipeline/viewer-crd-controller:1.0.4
docker pull gcr.io/ml-pipeline/visualization-server:1.0.4
docker tag gcr.io/ml-pipeline/visualization-server:1.0.4
docker pull mpioperator/mpi-operator:latest
docker tag mpioperator/mpi-operator:latest
docker pull kubeflow/mxnet-operator:v1.0.0-20200625
docker tag kubeflow/mxnet-operator:v1.0.0-20200625
docker pull gcr.io/ml-pipeline/mysql:5.6
docker tag gcr.io/ml-pipeline/mysql:5.6
docker pull gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker tag gcr.io/kubeflow-images-public/notebook-controller:vmaster-g6eb007d0
docker pull gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker tag gcr.io/kubeflow-images-public/profile-controller:vmaster-ga49f658f
docker pull gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker tag gcr.io/kubeflow-images-public/pytorch-operator:vmaster-g518f9c76
docker pull docker.io/seldonio/seldon-core-operator:1.4.0
docker tag docker.io/seldonio/seldon-core-operator:1.4.0
docker pull gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker tag gcr.io/spark-operator/spark-operator:v1beta2-1.1.0-2.4.5
docker pull gcr.io/google_containers/spartakus-amd64:v1.1.0
docker tag gcr.io/google_containers/spartakus-amd64:v1.1.0
docker pull gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker tag gcr.io/kubeflow-images-public/tf_operator:vmaster-gda226016
docker pull argoproj/workflow-controller:v2.3.0
docker tag argoproj/workflow-controller:v2.3.0
#statefulset 
docker pull gcr.io/kubeflow-images-public/ingress-setup:latest
docker tag gcr.io/kubeflow-images-public/ingress-setup:latest
docker pull gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker tag gcr.io/kubeflow-images-public/kubernetes-sigs/application:1.0-beta
docker pull gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker tag gcr.io/kubebuilder/kube-rbac-proxy:v0.4.0
docker pull metacontroller/metacontroller:v0.3.0
docker tag metacontroller/metacontroller:v0.3.0

5、save 到tar文件

将所有的镜像保存为tar文件,就可以在各个kubernetes节点下载然后load进去。如下:

docker save xxxx -o xxx.tar

6、load到docker images

从*.tar载入到docker系统中,在microk8s上使用microk8s.ctr(使用containerd)。

docker load xxxx -i xxx.tar

查看一下镜像是否已经进来:

#使用docker
docker images

#或者使用microk8s
microk8s.ctr images list

过一定时间后, kubernetes的pod将会自动重新创建,逐步进入正常运行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章