K8s Applications mit MicroK8S auf Raspberry PI. Alfred Sabitzer
Чтение книги онлайн.

Читать онлайн книгу K8s Applications mit MicroK8S auf Raspberry PI - Alfred Sabitzer страница 23

Название: K8s Applications mit MicroK8S auf Raspberry PI

Автор: Alfred Sabitzer

Издательство: Bookwire

Жанр: Математика

Серия:

isbn: 9783742770134

isbn:

СКАЧАТЬ was alles im Container drinnenn ist (und das ist eine ganze Menge).

      Nun pushen wir den Container in das remote-Repository. Es werden natürlich alle Layer gepushed (in dem Falle gab es die darunterliegenden Layer noch nicht).

      alfred@monitoring:~/GetInfo$ docker push docker.registry:5000/getinfo:20211015

      The push refers to repository [docker.registry:5000/getinfo]

      cae68116d3ec: Pushed

      dd68a1e5bd54: Pushed

      00e2dc9bf745: Pushed

      5a8d0b1f55c0: Pushed

      8f352be1ccfe: Pushed

      729e17fedb70: Pushed

      08ae3e8fdb37: Pushed

      6fe1ba639418: Pushed

      fa0d2ce7179e: Pushed

      092886e29cb5: Pushed

      c8d42fc353a6: Pushed

      6a91c97933c9: Pushed

      ee420dfed78a: Pushed

      20211015: digest: sha256:aa82ba777936d4cec354c0b9c5ece353751a96c9717375cfd58d3ed2beea5cf4 size: 3030

      alfred@monitoring:~/GetInfo$

      Kurze Kontrolle, ob der Container wirklich im Remote Repository gelandet ist.

      alfred@monitoring:~/GetInfo$ curl docker.registry:5000/v2/_catalog

      {"repositories":["getinfo","hello-world"]}

      alfred@monitoring:~/GetInfo$ curl docker.registry:5000/v2/getinfo/tags/list

      {"name":"getinfo","tags":["20211015"]}

      alfred@monitoring:~/GetInfo$

      OEBPS/images/image0024.jpg Abbildung 22: Longhorn Plattengröße

      Auch in der Longhorn-Anzeige kann man schön sehen, dass dieses Volume nicht mehr leer ist, und jetzt bereits ca. 1GB Platz braucht.

      Nun erzeugen wir ein yaml-File.

      ---

      apiVersion: apps/v1

      kind: Deployment

      metadata:

       name: getinfo

       #namespace: default

      spec:

       selector:

       matchLabels:

       app: getinfo

       replicas: 1

       template:

       metadata:

       labels:

       app: getinfo

       annotations:

       sidecar.istio.io/inject: "false"

       spec:

       containers:

       - name: getinfo

       image: docker.registry:5000/getinfo:20211015

       # resource limits

       resources:

       requests:

       memory: "24Mi"

       cpu: "500m" # half vcpu

       limits:

       memory: "64Mi"

       cpu: "1000m" # one vcpu

       env:

       # currently no env vars used for this container

       - name: FOO

       value: bar

       # check for lifetime liveness, restarts if dead

       livenessProbe:

       exec:

       command:

       - ls

       initialDelaySeconds: 5

       periodSeconds: 10

       # check for initial readyness

       readinessProbe:

       exec:

       command:

       - ls

       initialDelaySeconds: 3

       periodSeconds: 3

       # pod bekommt diesselbe Zeitzone wie der darunterliegende Node

       volumeMounts:

       - name: tz-local

       mountPath: /etc/localtime

       volumes:

       - name: tz-local

       hostPath: # abhängig vom darunterliegenden OS. Das hier ist linux.

       path: /etc/localtime

       restartPolicy: Always

       dnsPolicy: ClusterFirst

      ---

      apiVersion: v1

      kind: Service

      metadata:

       name: getinfo-service

       #namespace: default

       labels:

       app: getinfo

      spec:

       ports:

       # port=available to other containers

       - port: 8080

       name: hello

       # targetPort=exposed from inside container

       targetPort: 8080

       СКАЧАТЬ