美文网首页
Kubernetes-连接Harbor仓库拉取镜像

Kubernetes-连接Harbor仓库拉取镜像

作者: Statmoon | 来源:发表于2018-07-25 19:03 被阅读0次

    准备工作

    1. Harbor 镜像仓库服务器,我的服务器IP是192.168.242.132;
    2. Kubernetes集群节点能通过【docker login】命令登录Harbor仓库,详细设置步骤参考这篇博文

    开始配置

    1. 创建secret
    kubectl create secret docker-registry secret-name --namespace=default \
    --docker-server=http://192.168.242.132 --docker-username=username \
    --docker-password=password --docker-email=xxx@xxx.xxx
    

    secret-name: secret的名称
    namespace: 命名空间
    docker-server: Harbor仓库地址
    docker-username: Harbor仓库登录账号
    docker-password: Harbor仓库登录密码
    docker-email: 邮件地址

    create secret
    1. 创建yaml文件,我这里以nginx为例创建了一个
    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      name: nginx-deployment
      labels:
        app: nginx
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: 192.168.242.132/library/nginx:1.15.1
            imagePullPolicy: Always
            ports:
            - containerPort: 80
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-service
    spec:
      type: NodePort
      sessionAffinity: ClientIP
      selector:
        app: nginx
      ports:
        - port: 80
          nodePort: 30080
    

    执行命令创建

    kubectl create -f deploy-nginx.yaml 
    

    创建完成后查看Pods

    kubectl get pods
    
    pods

    最后可以通过浏览器来验证一下,yaml文件中定义对外暴露的端口是30080,现在在浏览器中可以输入Kubernetes集群任意节点的IP加上30080端口,我这里输入master节点的IP,http://192.168.242.136:30080/,可以正常看到nginx界面

    image.png

    那么这个镜像到底部署在哪个节点上呢,可以通过如下命令查看

    kubectl get pods -n default -o wide
    
    查看pods

    相关文章

      网友评论

          本文标题:Kubernetes-连接Harbor仓库拉取镜像

          本文链接:https://www.haomeiwen.com/subject/ijtmmftx.html