{"id":20688,"date":"2021-03-26T10:26:56","date_gmt":"2021-03-26T10:26:56","guid":{"rendered":"http:\/\/www.devopsschool.com\/blog\/?p=20688"},"modified":"2025-01-23T12:45:30","modified_gmt":"2025-01-23T12:45:30","slug":"kubernetes-deployment-example-programs","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/kubernetes-deployment-example-programs\/","title":{"rendered":"Kubernetes Deployment Example Programs"},"content":{"rendered":"<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">apiVersion: extensions\/v1beta1\nkind: Deployment\nmetadata:\n  name: hello-deploy\nspec:\n  replicas: <span class=\"hljs-number\">10<\/span>\n  minReadySeconds: <span class=\"hljs-number\">10<\/span>\n  strategy:\n    type: RollingUpdate\n    rollingUpdate:\n      maxUnavailable: <span class=\"hljs-number\">1<\/span>\n      maxSurge: <span class=\"hljs-number\">1<\/span>\n  template:\n    metadata:\n      labels:\n        app: hello-world\n    spec:\n      containers:\n      - name: hello-pod\n        image: nigelpoulton\/pluralsight-docker-ci:latest\n        ports:\n        - containerPort: <span class=\"hljs-number\">8080<\/span>\n\napiVersion: extensions\/v1beta1\nkind: Deployment\nmetadata:\n  name: hello-deploy\nspec:\n  replicas: <span class=\"hljs-number\">4<\/span>\n  minReadySeconds: <span class=\"hljs-number\">10<\/span>\n  strategy:\n    type: RollingUpdate\n    rollingUpdate:\n      maxUnavailable: <span class=\"hljs-number\">1<\/span>\n      maxSurge: <span class=\"hljs-number\">1<\/span>\n  template:\n    metadata:\n      labels:\n        app: hello-world\n    spec:\n      containers:\n      - name: hello-pod\n        image: nginx\n        ports:\n        - containerPort: <span class=\"hljs-number\">80<\/span>\n\t\t\napiVersion: extensions\/v1beta1\nkind: Deployment\nmetadata:\n  name: helloworld-deployment\nspec:\n  replicas: <span class=\"hljs-number\">3<\/span>\n  template:\n    metadata:\n      labels:\n        app: helloworld\n    spec:\n      containers:\n      - name: k8s-demo\n        image: wardviaene\/k8s-demo\n        ports:\n        - name: nodejs-port\n          containerPort: <span class=\"hljs-number\">3000<\/span>\n\n\t\t  \napiVersion: extensions\/v1beta1\nkind: Deployment\nmetadata:\n  name: helloworld-deployment\nspec:\n  replicas: <span class=\"hljs-number\">3<\/span>\n  template:\n    metadata:\n      labels:\n        app: helloworld\n    spec:\n      containers:\n      - name: k8s-demo\n        image: wardviaene\/k8s-demo\n        ports:\n        - name: nodejs-port\n          containerPort: <span class=\"hljs-number\">3000<\/span>\n        livenessProbe:\n          httpGet:\n            path: \/\n            port: nodejs-port\n          initialDelaySeconds: <span class=\"hljs-number\">15<\/span>\n          timeoutSeconds: <span class=\"hljs-number\">30<\/span>\n\n\napiVersion: extensions\/v1beta1\nkind: Deployment\nmetadata:\n  name: helloworld-deployment\nspec:\n  replicas: <span class=\"hljs-number\">3<\/span>\n  template:\n    metadata:\n      labels:\n        app: helloworld\n    spec:\n      containers:\n      - name: k8s-demo\n        image: wardviaene\/k8s-demo\n        ports:\n        - name: nodejs-port\n          containerPort: <span class=\"hljs-number\">3000<\/span>\n      nodeSelector:\n        hardware: high-spec\n\n\n\napiVersion: extensions\/v1beta1\nkind: Deployment\nmetadata:\n  name: helloworld-deployment\nspec:\n  replicas: <span class=\"hljs-number\">3<\/span>\n  template:\n    metadata:\n      labels:\n        app: helloworld\n    spec:\n      containers:\n      - name: k8s-demo\n        image: wardviaene\/k8s-demo\n        ports:\n        - name: nodejs-port\n          containerPort: <span class=\"hljs-number\">3000<\/span>\n        volumeMounts:\n        - name: cred-volume\n          mountPath: \/etc\/creds\n          readOnly: <span class=\"hljs-keyword\">true<\/span>\n      volumes:\n      - name: cred-volume\n        secret: \n          secretName: db-secrets\n\nDeployment v1 apps\n--------------------------\napiVersion: apps\/v1beta1\nkind: Deployment\nmetadata:\n  <span class=\"hljs-comment\"># Unique key of the Deployment instance<\/span>\n  name: deployment-example\nspec:\n  <span class=\"hljs-comment\"># 3 Pods should exist at all times.<\/span>\n  replicas: <span class=\"hljs-number\">3<\/span>\n  template:\n    metadata:\n      labels:\n        <span class=\"hljs-comment\"># Apply this label to pods and default<\/span>\n        <span class=\"hljs-comment\"># the Deployment label selector to this value<\/span>\n        app: nginx\n    spec:\n      containers:\n      - name: nginx\n        <span class=\"hljs-comment\"># Run this image<\/span>\n        image: nginx:<span class=\"hljs-number\">1.10<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n<div class=\"epyt-gallery\" data-currpage=\"1\" id=\"epyt_gallery_82730\"><iframe loading=\"lazy\"  id=\"_ytid_41393\"  width=\"760\" height=\"427\"  data-origwidth=\"760\" data-origheight=\"427\" src=\"https:\/\/www.youtube.com\/embed\/?enablejsapi=1&#038;autoplay=0&#038;cc_load_policy=0&#038;cc_lang_pref=&#038;iv_load_policy=1&#038;loop=0&#038;rel=1&#038;fs=1&#038;playsinline=0&#038;autohide=2&#038;theme=dark&#038;color=red&#038;controls=1&#038;disablekb=0&#038;\" class=\"__youtube_prefs__  no-lazyload\" title=\"YouTube player\"  data-epytgalleryid=\"epyt_gallery_82730\"  allow=\"fullscreen; accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen data-no-lazy=\"1\" data-skipgform_ajax_framebjll=\"\"><\/iframe><div class=\"epyt-gallery-list\"><div>Sorry, there was a YouTube error.<\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[4859],"tags":[],"class_list":["post-20688","post","type-post","status-publish","format-standard","hentry","category-kubernetes"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/20688","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=20688"}],"version-history":[{"count":2,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/20688\/revisions"}],"predecessor-version":[{"id":24466,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/20688\/revisions\/24466"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=20688"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=20688"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=20688"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}