k8s部署docker容器


環境:(docker ,k8s集群),繼續上次docker 啟動的java程序的鏡像為例(https://www.cnblogs.com/levcon/p/12442662.html)

將制作的鏡像推送到docker的私有倉庫


docker tag demo-img:latest localhost:5000/demo-img:1.0

docker push localhost:5000/demo-img:1.0

k8s部署該鏡像

k8s創建命名空間及secret


創建命名空間cl-test,這里名字根據自己的命名規范自己定義,我這是測試用的

kubectl create namespace cl-test

創建完ns后,我們要給這個ns創建secret

kubectl create secret docker-registry regcred --docker-server=your resroty ip:5000 --docker-username=root --docker-password=xxxx@ --docker-email=xxxx@163.com -n cl-test

控制台返回“secret/regcred created”表示創建成功

創建demo服務的yaml文件,我們service和deployment放在一個yaml文件中


---

apiVersion: v1
kind: Service
metadata:
  name: demo-service
  namespace: cl-test
  labels:
    app: demo-service
spec:
  type: NodePort
  ports:
  - port: 8701
    targetPort: 8701
    protocol: TCP
    name: http
  selector:
    app: demo-pod
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: demo-deployment
  namespace: cl-test
spec:
  selector:
    matchLabels:
      app: demo-pod
  replicas: 1
  template:
    metadata:
      labels:
        app: demo-pod
    spec:
      containers:
      - name: demo-container
        image: localhost:5000/demo-img:1.0  #本地私有鏡像庫的鏡像名稱+版本
        ports:
        - containerPort: 8701

啟動


kubectl create  -f demo.yaml

查看pod


kubectl get pod -n cl-test

pod日志查看,正是我們之前java啟動時所展示的日志


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM