k8s学习七:使用本地docker镜像仓库部署服务

举报
仙士可 发表于 2023/06/30 12:21:42 2023/06/30
【摘要】 在master节点中,通过docker 启动docker 仓库服务:docker run -d -p 5000:5000 --restart=always --name registry registry:2复制没有此镜像会自动下载更新所有节点的仓库地址所有的节点都更新/etc/docker/daemon.json,insecure-registries为本地仓库地址。这里我填的本地仓库地址...

在master节点中,通过docker 启动docker 仓库服务:

docker run -d -p 5000:5000 --restart=always --name registry registry:2
复制

没有此镜像会自动下载

更新所有节点的仓库地址

所有的节点都更新/etc/docker/daemon.json,insecure-registries为本地仓库地址。这里我填的本地仓库地址为master节点的ip。

重启所有节点的docker

root@master:/home/tioncico# systemctl daemon-reload
root@master:/home/tioncico# systemctl restart docker
复制

打包镜像推送到本地节点

docker tag tioncico/go:v1.0.1  192.168.192.9:5000/tioncico/go:v1.0.1  //原有教程有build,这里直接打一个新的tag
docker push 192.168.192.9:5000/tioncico/go:v1.0.1
复制

部署go的yaml文件修改

主要是指定image的地址:

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: go-deployment
  labels:
    app: go
spec:
  selector:
    matchLabels:
      app: go
  replicas: 3
  minReadySeconds: 5
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
  template:
    metadata:
      labels:
        app: go
    spec:
      containers:
        - image: 192.168.192.9:5000/tioncico/go:v1.0.1
          name: go
          imagePullPolicy: Always
          command: ["./main","-v","v1.0.1"]
          ports:
            - containerPort: 8080
              protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
  name: go-service
  labels:
    app: go
spec:
  selector:
    app: go
  ports:
    - name: go-port
      protocol: TCP
      port: 8080
      targetPort: 8080
      nodePort: 30080
  type: NodePort
复制

然后部署即可

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。