{"id":3965,"date":"2024-04-02T17:17:58","date_gmt":"2024-04-02T17:17:58","guid":{"rendered":"https:\/\/code2deploy.com\/blog\/?p=3965"},"modified":"2024-04-02T17:17:59","modified_gmt":"2024-04-02T17:17:59","slug":"kubernetes-pods","status":"publish","type":"post","link":"https:\/\/code2deploy.com\/blog\/kubernetes-pods\/","title":{"rendered":"Kubernetes Pods"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Pod is the basic building block of Kubernetes,<strong><em> the smallest deployable unit <\/em><\/strong>in the Kubernetes that can be created and managed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A pod is a group of one or more containers (such as Docker containers) with shared storage\/network, and a specification for how to run the containers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A pod represents a single instance of an application in Kubernetes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here is the <strong>manifest<\/strong> for a Pod:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Create a manifest file for pod creation&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ sudo vim nginx.yaml<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Enter the following manifest&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>apiVersion: v1<br>kind: Pod<br>metadata:<br>&nbsp; name: nginx<br>&nbsp; labels:<br>&nbsp; &nbsp; app: nginx<br>spec:<br>&nbsp; containers:<br>&nbsp; &#8211; name: nginx<br>&nbsp; &nbsp; image: nginx:latest<br>&nbsp; &nbsp; imagePullPolicy: IfNotPresent<br>&nbsp; &nbsp; ports:<br>&nbsp; &nbsp; &#8211; containerPort: 80<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Create a pod:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl create -f nginx.yaml<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">pod &#8220;nginx&#8221; created<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Verify the pod is running:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl get pod nginx<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Expected Output:&nbsp;<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>NAME&nbsp; &nbsp; READY &nbsp; STATUS&nbsp; &nbsp; RESTARTS &nbsp; AGE<br>nginx &nbsp; 1\/1 &nbsp; &nbsp; Running &nbsp; 0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 89s<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Check the pod created in the which node<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>kubectl get pod -o wide<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Expected Output: :<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>NAME&nbsp; &nbsp; READY &nbsp; STATUS&nbsp; &nbsp; RESTARTS &nbsp; AGE&nbsp; &nbsp; &nbsp;IP &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NODE &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NOMINATED NODE &nbsp; READINESS GATES<br>nginx &nbsp; 1\/1 &nbsp; &nbsp; Running &nbsp; 0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2m50s &nbsp; 192.168.230.9 &nbsp; k8s-worker-1 &nbsp; &lt;none&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &lt;none&gt;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Edit pod configuration:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl edit pod nginx<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You can edit the<strong> Pod-YAML<\/strong> using this command&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Expose this pod using service, Let\u2019s create a service<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Note: <\/strong>we will learn more about the server on the next page&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Create a service manifest file&nbsp;<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ sudo vim nginx-svc.yaml<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Enter the following manifest&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>apiVersion: v1<br>kind: Service<br>metadata:<br>&nbsp; name: nginx-service<br>spec:<br>&nbsp; selector:<br>&nbsp; &nbsp; app: nginx<br>&nbsp; ports:<br>&nbsp; &nbsp; &#8211; protocol: TCP<br>&nbsp; &nbsp; &nbsp; port: 80<br>&nbsp; &nbsp; &nbsp; targetPort: 80<br>&nbsp; &nbsp; &nbsp; nodePort: 31423<br>&nbsp; type: NodePort<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">In this configuration, the<strong> label of the Pod<\/strong> is specified within the <strong>Service&#8217;s selector section<\/strong>. This allows the Service to identify and expose the Pod associated with that specific label.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check whether the Service was Created or not<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl get svc -n default&nbsp;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Expected Output:&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>NAME &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;TYPE &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLUSTER-IP &nbsp; &nbsp; &nbsp; EXTERNAL-IP &nbsp; PORT(S) &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; AGE<br>nginx-service &nbsp; NodePort&nbsp; &nbsp; 10.108.209.184 &nbsp; &lt;none&gt;&nbsp; &nbsp; &nbsp; &nbsp; 80:31423\/TCP&nbsp; &nbsp; &nbsp; &nbsp; 14s<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Service has been created, now let\u2019s Verify the Nginx from the browser <strong>http:\/\/Node-IP:31423<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Delete a pod<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl delete -f nginx.yaml<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Expected Output:&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>pod &#8220;nginx&#8221; deleted<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp; &nbsp; &nbsp; &nbsp; &#8212; or &#8212;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl delete pod nginx<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">pod &#8220;nginx&#8221; deleted<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Delete the service&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>$ kubectl delete -f nginx-svc.yaml&nbsp;&nbsp;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Pod Lifecycle<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Here are the possible values for STATUS:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Pending State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The Pod has been accepted by the Kubernetes system, but one or more of the Container images has not been created. This includes time before being scheduled as well as time spent downloading images over the network, which could take a while.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Running State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The Pod has been bound to a node, and all of the Containers have been created. At least one Container is still running or is in the process of starting or restarting.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Succeeded State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">All Containers in the Pod have terminated in success, and will not be restarted.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Failed State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">All Containers in the Pod have terminated, and at least one Container has terminated in failure. That is, the Container either exited with non-zero status or was terminated by the system.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Unknown State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">For some reason, the state of the Pod could not be obtained, typically due to an error in communicating with the host of the Pod.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Completed State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The pod has run to completion as there is nothing to keep it running eg. Completed Jobs.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>CrashLoopBackOff State<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">This means that one of the containers in the <strong><em>pod has exited unexpectedly,<\/em><\/strong> and perhaps with a non-zero error code even after restarting due to the restart policy.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Multi-Container Pods<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Pods are designed to support multiple containers. The containers in a Pod are automatically co-located and co-scheduled on the same node in the cluster.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\">\n<li>The containers can share resources and dependencies, communicate with one another, and coordinate when and how they are terminated.<\/li>\n<\/ol>\n\n\n\n<ol class=\"wp-block-list\" start=\"3\">\n<li>The <strong>&#8220;one container per Pod&#8221;<\/strong> model is the most common use case and Kubernetes manages the Pods rather than the containers directly.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Here is an example of a<strong> multi-container pod<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>apiVersion: v1<br>kind: Pod<br>metadata:<br>&nbsp; name: nginx-web<br>spec:<br>&nbsp; volumes:<br>&nbsp; &#8211; name: shared-files<br>&nbsp; &nbsp; emptyDir: {}<br>&nbsp; &#8211; name: nginx-config-volume<br>&nbsp; &nbsp; configMap:<br>&nbsp; &nbsp; &nbsp; name: nginx-config<br>&nbsp; containers:<br>&nbsp; &#8211; name: app<br>&nbsp; &nbsp; image: php-app:1.0<br>&nbsp; &nbsp; volumeMounts:<br>&nbsp; &nbsp; &#8211; name: shared-files<br>&nbsp; &nbsp; &nbsp; mountPath: \/var\/www\/html<br>&nbsp; &#8211; name: nginx<br>&nbsp; &nbsp; image: nginx:latest<br>&nbsp; &nbsp; volumeMounts:<br>&nbsp; &nbsp; &#8211; name: shared-files<br>&nbsp; &nbsp; &nbsp; mountPath: \/var\/www\/html<br>&nbsp; &nbsp; &#8211; name: nginx-config-volume<br>&nbsp; &nbsp; &nbsp; mountPath: \/etc\/nginx\/nginx.conf<br>&nbsp; &nbsp; &nbsp; subPath: nginx.conf<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Init Containers<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Like multiple containers in a pod, it can also have one or more init containers, which are run before the application containers are started.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Init containers always run to completion.<\/li>\n\n\n\n<li>Each init container must be completed successfully before the next one starts.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Here is an example of <strong>init containers<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>apiVersion: v1<br>kind: Pod<br>metadata:<br>&nbsp; name: wordpress<br>spec:<br>&nbsp; containers:<br>&nbsp; &#8211; image: wordpress:latest<br>&nbsp; &nbsp; name: wordpress<br>&nbsp; &nbsp; ports:<br>&nbsp; &nbsp; &#8211; containerPort: 80<br>&nbsp; &nbsp; &nbsp; name: wordpress<br>&nbsp; initContainers:<br>&nbsp; &#8211; name: change-permissions<br>&nbsp; &nbsp; image: busybox<br>&nbsp; &nbsp; command: [&#8216;sh&#8217;, &#8216;-c&#8217;, &#8216;chown www-data:www-data \/var\/www\/html &amp;&amp; chmod -R 755 \/var\/www\/html&#8217;]<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>More details about pod, manifest creation, delation, edit, update, Pod Lifecycle, Multi-Container Pods, Init Containers. <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,218],"tags":[461,460,140,427,459,458],"class_list":["post-3965","post","type-post","status-publish","format-standard","hentry","category-kubernetes","category-pod","tag-init-containers","tag-multi-container-pods","tag-pod","tag-pod-commands","tag-pod-lifecycle","tag-pod-manifest"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Kubernetes Pods - code2deploy.com<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.code2deploy.com\/kubernetes-pods\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes Pods - code2deploy.com\" \/>\n<meta property=\"og:description\" content=\"More details about pod, manifest creation, delation, edit, update, Pod Lifecycle, Multi-Container Pods, Init Containers.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.code2deploy.com\/kubernetes-pods\/\" \/>\n<meta property=\"og:site_name\" content=\"code2deploy.com\" \/>\n<meta property=\"article:published_time\" content=\"2024-04-02T17:17:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-02T17:17:59+00:00\" \/>\n<meta name=\"author\" content=\"enam\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"enam\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/\"},\"author\":{\"name\":\"enam\",\"@id\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/#\\\/schema\\\/person\\\/e46930c19b999a87f12566fa8357481b\"},\"headline\":\"Kubernetes Pods\",\"datePublished\":\"2024-04-02T17:17:58+00:00\",\"dateModified\":\"2024-04-02T17:17:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/\"},\"wordCount\":977,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/#\\\/schema\\\/person\\\/e46930c19b999a87f12566fa8357481b\"},\"keywords\":[\"Init Containers\",\"Multi-Container Pods\",\"pod\",\"Pod Commands\",\"Pod Lifecycle\",\"pod manifest\"],\"articleSection\":[\"Kubernetes\",\"POD\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/\",\"url\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/\",\"name\":\"Kubernetes Pods - code2deploy.com\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/#website\"},\"datePublished\":\"2024-04-02T17:17:58+00:00\",\"dateModified\":\"2024-04-02T17:17:59+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.code2deploy.com\\\/kubernetes-pods\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kubernetes Pods\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/\",\"name\":\"code2deploy.com\\\/blog\",\"description\":\"TechOps\",\"publisher\":{\"@id\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/#\\\/schema\\\/person\\\/e46930c19b999a87f12566fa8357481b\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/#\\\/schema\\\/person\\\/e46930c19b999a87f12566fa8357481b\",\"name\":\"enam\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g\",\"caption\":\"enam\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g\"},\"sameAs\":[\"https:\\\/\\\/code2deploy.com\\\/blog\"],\"url\":\"https:\\\/\\\/code2deploy.com\\\/blog\\\/author\\\/enam\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kubernetes Pods - code2deploy.com","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/","og_locale":"en_US","og_type":"article","og_title":"Kubernetes Pods - code2deploy.com","og_description":"More details about pod, manifest creation, delation, edit, update, Pod Lifecycle, Multi-Container Pods, Init Containers.","og_url":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/","og_site_name":"code2deploy.com","article_published_time":"2024-04-02T17:17:58+00:00","article_modified_time":"2024-04-02T17:17:59+00:00","author":"enam","twitter_card":"summary_large_image","twitter_misc":{"Written by":"enam","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/#article","isPartOf":{"@id":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/"},"author":{"name":"enam","@id":"https:\/\/code2deploy.com\/blog\/#\/schema\/person\/e46930c19b999a87f12566fa8357481b"},"headline":"Kubernetes Pods","datePublished":"2024-04-02T17:17:58+00:00","dateModified":"2024-04-02T17:17:59+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/"},"wordCount":977,"commentCount":0,"publisher":{"@id":"https:\/\/code2deploy.com\/blog\/#\/schema\/person\/e46930c19b999a87f12566fa8357481b"},"keywords":["Init Containers","Multi-Container Pods","pod","Pod Commands","Pod Lifecycle","pod manifest"],"articleSection":["Kubernetes","POD"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.code2deploy.com\/kubernetes-pods\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/","url":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/","name":"Kubernetes Pods - code2deploy.com","isPartOf":{"@id":"https:\/\/code2deploy.com\/blog\/#website"},"datePublished":"2024-04-02T17:17:58+00:00","dateModified":"2024-04-02T17:17:59+00:00","breadcrumb":{"@id":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.code2deploy.com\/kubernetes-pods\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.code2deploy.com\/kubernetes-pods\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/code2deploy.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Kubernetes Pods"}]},{"@type":"WebSite","@id":"https:\/\/code2deploy.com\/blog\/#website","url":"https:\/\/code2deploy.com\/blog\/","name":"code2deploy.com\/blog","description":"TechOps","publisher":{"@id":"https:\/\/code2deploy.com\/blog\/#\/schema\/person\/e46930c19b999a87f12566fa8357481b"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/code2deploy.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/code2deploy.com\/blog\/#\/schema\/person\/e46930c19b999a87f12566fa8357481b","name":"enam","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g","caption":"enam"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/d864e2f082f4499f8f1b33f004ec166eea77b9e94738553b120b6dca2410f203?s=96&d=mm&r=g"},"sameAs":["https:\/\/code2deploy.com\/blog"],"url":"https:\/\/code2deploy.com\/blog\/author\/enam\/"}]}},"_links":{"self":[{"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/posts\/3965","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/comments?post=3965"}],"version-history":[{"count":1,"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/posts\/3965\/revisions"}],"predecessor-version":[{"id":3966,"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/posts\/3965\/revisions\/3966"}],"wp:attachment":[{"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/media?parent=3965"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/categories?post=3965"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/code2deploy.com\/blog\/wp-json\/wp\/v2\/tags?post=3965"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}