k8s拉取私库镜像

简介: K8s拉取私有镜像,并运行

创建阿里云私有Registry

参考阿里云官方文档,仓库名称:express-app
pull地址:registry.cn-hangzhou.aliyuncs.com/neibo/express-app

将镜像推送到Registry

docker login --username=内博科技 registry.cn-hangzhou.aliyuncs.com
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/neibo/express-app:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/neibo/express-app:[镜像版本号]

备注:即修改镜像名称和tag同镜像仓库一致

从Registry中拉取镜像

docker login --username=内博科技 registry.cn-hangzhou.aliyuncs.com
docker pull registry.cn-hangzhou.aliyuncs.com/neibo/express-app:v1

编写express-app.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: express-app
spec:
  selector:
    matchLabels:
      app: express-app
  replicas: 1
  template:
    metadata:
      labels:
        app: express-app
    spec:
      containers:
      - name: express-app
        image: registry.cn-hangzhou.aliyuncs.com/neibo/express-app:v1
        ports:
        - containerPort: 3000
      imagePullSecrets:
        - name: my-secret

在pull镜像时,需要用docker私有仓库登录账号和密码,设置命令如下:

kubectl create secret docker-registry regsecret --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>

编写express-service.yaml

apiVersion: v1
kind: Service
metadata:
  name: express-service
  labels:
    app: express-app
spec:
   type: NodePort
   ports:
   - targetPort: 3000
     nodePort: 32000
     port: 3100
     protocol: TCP
   selector:
    app: express-app

创建delopy service

kubectl create -f express-app.yaml
kubectl create -f express-service.yaml

访问:http://lockplat.com:3000地址,即可查看效果。

调度pod运行于master节点上方法一

调度pod运行于master节点上

调度pod运行于master节点上方法二

出于安全考虑,默认配置下Kubernetes不会将Pod调度到Master节点。如果希望将k8s-master也当作Node使用,可以执行如下命令:

kubectl taint node k8s-master node-role.kubernetes.io/master-

其中k8s-master是主机节点hostname如果要恢复Master Only状态,执行如下命令:

kubectl taint nodes <node-name> node-role.kubernetes.io/master=:NoSchedule

kubectl taint nodes <node-name> node-role.kubernetes.io/master:NoSchedule-
相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务&nbsp;ACK 容器服务&nbsp;Kubernetes&nbsp;版(简称&nbsp;ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情:&nbsp;https://www.aliyun.com/product/kubernetes
目录
相关文章
|
3月前
|
Kubernetes 容器 Perl
【kubernetes】如何找到k8s内部拉取的镜像
【kubernetes】如何找到k8s内部拉取的镜像
114 1
|
5月前
|
Kubernetes 数据安全/隐私保护 Docker
k8s 拉取镜像报错 no basic auth credentials
k8s 拉取镜像报错 no basic auth credentials
379 0
|
2月前
|
JSON Kubernetes Docker
K8S 1.20 弃用 Docker 评估之 Docker 和 OCI 镜像格式的差别
K8S 1.20 弃用 Docker 评估之 Docker 和 OCI 镜像格式的差别
|
4月前
|
Kubernetes Cloud Native 应用服务中间件
云原生|kubernetes|kubernetes集群使用私有镜像仓库拉取镜像(harbor或者官方的registry私有镜像仓库)
云原生|kubernetes|kubernetes集群使用私有镜像仓库拉取镜像(harbor或者官方的registry私有镜像仓库)
329 0
|
4月前
|
Kubernetes 安全 测试技术
Docker|kubernetes|本地镜像批量推送到Harbor私有仓库的脚本
Docker|kubernetes|本地镜像批量推送到Harbor私有仓库的脚本
108 0
|
4月前
|
Kubernetes 安全 Linux
k8s学习-CKS真题-Trivy扫描镜像安全漏洞
k8s学习-CKS真题-Trivy扫描镜像安全漏洞
58 0
|
6月前
|
Kubernetes 网络安全 Docker
快速解决Kubernetes从k8s.gcr.io仓库拉取镜像失败问题
快速解决Kubernetes从k8s.gcr.io仓库拉取镜像失败问题
430 0
|
7月前
|
缓存 Kubernetes Java
加速 Kubernetes 镜像拉取
加速 Kubernetes 镜像拉取
195 0
|
7月前
|
Kubernetes 应用服务中间件 nginx
解决containerd+k8s集群搭建镜像拉取不到的问题
解决containerd+k8s集群搭建镜像拉取不到的问题
493 0
|
7月前
|
存储 Linux Docker
(四)动手构建第一个自己的docker镜像,并深入学习docker镜像和容器管理
(四)动手构建第一个自己的docker镜像,并深入学习docker镜像和容器管理