1.docker登陆认证

[root@master ~]# vim /etc/docker/daemon.json
{"insecure-registries": ["10.0.1.99:5000"]
}

进行登录认证才能进行后续的操作,私有镜像仓库登录认证的语法和格式:docker login <nexus-hostname>:<repository-port>

[root@master ~]# docker login 10.0.1.99:5000
Username(admin): admin
Password:
login Succeeded
[root@master ~]# 

登录时,需要提供用户名和密码。认证的信息会被保存在~/.docker/config.json文件,在后续与私有镜像仓库交互时就可以被重用,而不需要每次都进行登录认证。

[root@master ~]# cat ./.docker/config.json
{"auths": {"10.0.1.99:5000": {"auth": "YWRtaW46aGFpcGFpMTIzQA=="},"134.205.136.89:5000": {"auth": "YWRtaW46aGFpcGFpMTIzQA=="}},"HttpHeaders": {"User-Agent": "Docker-Client/18.09.6 (linux)"}
}

2.Kubernetes从私有镜像拉取镜像

在使用私有镜像拉取镜像时,需要为私有镜像仓库创建一个镜像仓库的密钥,并在创建容器中进行引用。创建镜像仓库的语法和格式:kubectl create secret docker–registry <regsecret-name> —docker–server=<your–registry–server> —docker–username=<your–name> —docker–password=<your–pword> —docker–email=<your–email>。

<regsecret-name>:所创建的私有镜像仓库密钥的名称;
<your-registry-server>:为镜像仓库的服务器地址;
<your-name>:登录镜像仓库的用户名;
<your-pword>:登录镜像仓库的密码;
<your-email>:用户的邮箱地址。

//--docker-server=10.0.1.99:5000 值不要加http://
[root@master ~]# kubectl create secret docker-registry mysecret --docker-server=10.0.1.99:5000 --docker-username=admin --docker-password=123456 --docker-email=yiyo@126.com
[root@master ~]# kubectl get secret
NAME                  TYPE                                  DATA   AGE
default-token-pwlvv   kubernetes.io/service-account-token   3      5d7h
mysecret              kubernetes.io/dockerconfigjson        1      22h
mysql-root-password   Opaque                                1      3d
newsecret             kubernetes.io/dockerconfigjson        1      13h
[root@master ~]# 

定义拉取镜像的yaml

[root@master ~]# vim admin.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:name: dentestreplce
spec:replicas: 2template:metadata:labels:name: dentestreplacespec:containers:- name: dentestreplaceimagePullPolicy: Always#imagePullPolicy: IfNotPresentimage: 10.0.1.99:5000/test/travel-admin:1.0.0ports:- containerPort: 8001imagePullSecrets:- name: mysecret        //我们上面创建的secret的名称

创建Deployment

如果不成功就在每个节点做开头第一步操作

root@master test]# kubectl apply -f admin.yaml
deployment.extensions/dentestreplce created
[root@master test]# kubectl get pod -o wide
NAME                             READY   STATUS    RESTARTS   AGE     IP             NODE     NOMINATED NODE   READINESS GATES
dentestreplce-5759f6c9b6-89r8r   1/1     Running   0          48s     10.244.1.100   node01   <none>           <none>
dentestreplce-5759f6c9b6-d2p2x   1/1     Running   0          48s     10.244.3.91    node02   <none>           <none>//查看过程
[root@master test]# kubectl  describe pod dentestreplce-5759f6c9b6-89r8r
Name:               dentestreplce-5759f6c9b6-89r8r
Namespace:          default
Priority:           0
PriorityClassName:  <none>
Node:               node01/10.0.1.133
Start Time:         Thu, 16 May 2019 22:13:04 +0800
Labels:             name=dentestreplacepod-template-hash=5759f6c9b6
Annotations:        <none>
Status:             Running
IP:                 10.244.1.100
Controlled By:      ReplicaSet/dentestreplce-5759f6c9b6
Containers:dentestreplace:Container ID:   docker://17c5b9e8878c194cfd020ebecb84b963851f37b9a7fc5cff11b2423475098445Image:          10.0.1.99:5000/test/travel-admin:1.0.0Image ID:       docker-pullable://10.0.1.99:5000/test/travel-admin@sha256:71eee17b1d9692343e8b91075bfff86676549aadf4ba440a0f0116183480a42fPort:           7001/TCPHost Port:      0/TCPState:          RunningStarted:      Thu, 16 May 2019 22:13:05 +0800Ready:          TrueRestart Count:  0Environment:    <none>Mounts:/var/run/secrets/kubernetes.io/serviceaccount from default-token-pwlvv (ro)
Conditions:Type              StatusInitialized       True Ready             True ContainersReady   True PodScheduled      True
Volumes:default-token-pwlvv:Type:        Secret (a volume populated by a Secret)SecretName:  default-token-pwlvvOptional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300snode.kubernetes.io/unreachable:NoExecute for 300s
Events:Type    Reason     Age   From               Message----    ------     ----  ----               -------Normal  Scheduled  96s   default-scheduler  Successfully assigned default/dentestreplce-5759f6c9b6-89r8r to node01Normal  Pulling    91s   kubelet, node01    Pulling image "10.0.1.99:5000/test/travel-admin:1.0.0"Normal  Pulled     91s   kubelet, node01    Successfully pulled image "10.0.1.99:5000/test/travel-admin:1.0.0"Normal  Created    91s   kubelet, node01    Created container dentestreplaceNormal  Started    90s   kubelet, node01    Started container dentestreplace
[root@master test]# 

转载于:https://www.cnblogs.com/linyouyi/p/10878455.html

Kunbernetes从私有仓库nexus拉取镜像相关推荐

  1. kubernetes通过私有仓库harbor拉取镜像

    首先配置私有仓库harbor的secret: # kubectl create secret docker-registry registry-secret --namespace=default \ ...

  2. docker 从harbor 拉取镜像慢_Kubernetes-通过Rancher从Harbor私有仓库拉取镜像

    引言   前一篇文章详细描述了如何使用rancher搭建Kubernetes高可用集群,集群搭建好了后,我们就需要开始部署应用了,那么如何从私有镜像仓库拉取镜像呢? 原理   Harbor使用了基于角 ...

  3. k8s实战之从私有仓库拉取镜像 - kubernetes

    1.实战目的 从私有docker仓库拉取镜像,部署pod.上一篇中,我们搭建了私有的镜像仓库,这一篇我们将与k8s结合实战使用私有仓库. 2.登录docker 为了完成本次实战,需要登录docker, ...

  4. dockerfile拉取私库镜像_从私有仓库拉取镜像

    从私有仓库拉取镜像 浏览 0 扫码 分享 2019-10-27 17:16:54 origin_last_modified:2019-06-06 06:18(#14740) 译文原文 英文原文 版权声 ...

  5. K8S从私有仓库拉取镜像

    通常来讲,我们在通过公共镜像仓库拉取docker镜像的时候,不需要任何的认证操作,但我们在构建了企业的私有镜像以后,就不得不在拉取镜像之前通过用户名密码来完成认证. 在docker单机环境中,我们可以 ...

  6. k8s 拉取镜像失败_k8s 拉取私有仓库失败

    k8s 报错拉取镜像失败 Error response from daemon: pull access denied for istio/citadel, repository does not e ...

  7. docker公共仓库:创建docker hub公共仓库 / 登陆docker hub仓库报错解决/ 上传拉取镜像 / 配置阿里云镜像加速器

    ######1.创建docker公共仓库###### Docker仓库是用来包含镜像的位置,Docker提供一个注册服务器(Register)来保存多个仓库, 每个仓库又可以包含多个具备不同tag的镜 ...

  8. dockerhub 拉取地址_使用docker,进行dockerhub仓库上传镜像,拉取镜像。

    Docker Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布 ...

  9. 解决从k8s.gcr.io/gcr.io/quay.io等地址拉取镜像失败问题(Kubernetes国内镜像仓库地址)

    解决从k8s.gcr.io/gcr.io/quay.io等地址拉取镜像失败问题(Kubernetes国内镜像仓库地址) 参考文章: (1)解决从k8s.gcr.io/gcr.io/quay.io等地址 ...

  10. 镜像在国外仓库,拉取不了怎么办

    镜像在国外仓库,拉取不了怎么办 #镜像拉取失败 Back-off pulling image "us.gcr.io/k8s-artifacts-prod/ingress-nginx/cont ...

最新文章

  1. OpenGL中的VAO和VBO使用技巧
  2. java序列化库_java 中序列化(Serializable)
  3. mscoreei.dll没有被指定在windows上运行_在Windows上使用Docker运行.NetCore
  4. 马斯克称曾试图将特斯拉出售给苹果、Telegram 用户近5亿、Vimeo将上市等|Decode the Week...
  5. java 缘起_GraalVM 助力 Java 进入函数即服务时代
  6. android unix时间,android: 日期转Unix时间戳,Unix时间戳转日期,带时区
  7. Web Hacking 101 中文版 十四、XML 外部实体注入(二)
  8. java的技术定义_java基础知识——Java的定义,特点和技术平台
  9. bae java乱码_BAE安装HotNews Pro乱码解决方案
  10. nagios监控php使用情况,给nagios增加监控当前php进程数的插件,并用pnp出图
  11. 中国银联Apple Pay 支付集成
  12. keras的net中使用tensorflow函数, AttributeError: ‘NoneType‘ object has no attribute ‘_inbound_nodes‘
  13. mui.ajax执行的次数,MUI 中使用 ajax下拉刷新时,数据怎么才能做到累加呢,谢谢...
  14. 精致女生必备6款实用app 这几款你值得拥有
  15. 从文本进度条开始:谈谈自己缺失的Python基础知识
  16. Word查找红色文字 Word查找颜色字体 Word查找突出格式文本
  17. DP 转 HDMI视频信号转换 CS5263替代IT6563
  18. 记参加哈工大SCIR(赛尔)实验室笔试
  19. ANSYS MESHING网格种类及区别
  20. git 默认的名字和账号

热门文章

  1. 大厂标配的动态化解决方案,高阶技术从未如此简单
  2. excel自动换行_Excel教程:看完这篇,再也不为excel换行而烦恼
  3. ROS学习笔记(2)——ROS通信机制
  4. growup怎么读_欧路词典|英汉-汉英词典 grow up是什么意思_grow up的中文解释和发音_grow up的翻译_grow up怎么读...
  5. 局域网监控软件——邮件监控
  6. POJ 1371 Tin Cutter 笔记
  7. 百度地图api将可视区域定位到当前所在位置
  8. markdown 语法大全
  9. 数字图像处理实验03——图像几何变换
  10. 从修身齐家治国平天下谈分布式系统中的限流与熔断