{"id":2435,"date":"2016-11-12T03:32:36","date_gmt":"2016-11-12T03:32:35","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2435"},"modified":"2023-01-25T15:45:59","modified_gmt":"2023-01-25T23:45:59","slug":"docker-health-check-keeping-containers-healthy","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/docker-health-check-keeping-containers-healthy\/","title":{"rendered":"Uso del comando Docker Healthcheck"},"content":{"rendered":"<p>Una de las nuevas caracter\u00edsticas de Docker 1.12 es c\u00f3mo la comprobaci\u00f3n de la salud de un contenedor puede ser incorporada en la definici\u00f3n de la imagen. Y esto puede ser anulado en la l\u00ednea de comandos. Al igual que el <code>CMD<\/code> instrucci\u00f3n, puede haber m\u00faltiples <code>HEALTHCHECK<\/code> en Dockerfile, pero s\u00f3lo la \u00faltima es efectiva.<\/p>\n<p>Esta es una gran adici\u00f3n porque un contenedor que informa de su estado como <code>Hasta 1 hora<\/code> puede devolver errores. El contenedor puede estar activo pero no hay forma de que la aplicaci\u00f3n dentro del contenedor proporcione un estado. Esta instrucci\u00f3n lo soluciona.<\/p>\n<p>En\u00a0<a href=\"https:\/\/github.com\/arun-gupta\/docker-images\/blob\/master\/couchbase\/Dockerfile\">Dockerfile<\/a> que construye <a href=\"https:\/\/hub.docker.com\/r\/arungupta\/couchbase\/\">arungupta\/couchbase<\/a> imagen es:<\/p>\n<pre class=\"lang:default decode:true\">FROM couchbase:latest\r\n\r\nCOPY configure-node.sh \/opt\/couchbase\r\n\r\nHEALTHCHECK --interval=5s --timeout=3s CMD curl --fail https:\/\/localhost:8091\/pools || exit 1\r\n\r\nCMD [\"\/opt\/couchbase\/configure-node.sh\"]<\/pre>\n<p>Utiliza <code>configure-node.sh<\/code> para configurar el servidor mediante <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/current\/rest-api\/rest-endpoints-all.html\">API REST de Couchbase<\/a>. La nueva instrucci\u00f3n a tener en cuenta aqu\u00ed es <code>HEALTHCHECK<\/code>. Esta instrucci\u00f3n se puede especificar como:<\/p>\n<pre class=\"lang:default decode:true\">HEALTHCHECK CMD<\/pre>\n<p>En <code><\/code> puede ser:<\/p>\n<ul>\n<li><code>--intervalo=DURACI\u00d3N<\/code> (por defecto 30s)<\/li>\n<li><code>--timeout=DURACI\u00d3N<\/code> (por defecto 30s)<\/li>\n<li><code>--retries=N<\/code> (por defecto 3)<\/li>\n<\/ul>\n<p>En <code><\/code> es el comando que se ejecuta dentro del contenedor para comprobar su estado. Si la comprobaci\u00f3n de salud est\u00e1 activada, el contenedor puede tener tres estados:<\/p>\n<ul>\n<li><code>Inicio<\/code> - Estado inicial cuando el contenedor a\u00fan est\u00e1 arrancando<\/li>\n<li><code>saludable<\/code> - Si el comando tiene \u00e9xito, entonces el contenedor est\u00e1 sano<\/li>\n<li>insalubre - Si una sola ejecuci\u00f3n de la\u00a0<code><\/code> tarda m\u00e1s que el tiempo de espera especificado, entonces se considera no saludable. Si una comprobaci\u00f3n de estado falla, se ejecutar\u00e1n reintentos varias veces y el estado del contenedor Docker se declarar\u00e1 no saludable si sigue fallando.<\/li>\n<\/ul>\n<p>El estado de salida de los comandos Docker indica el estado HEALTHCHECK del contenedor. Se permiten los siguientes valores:<\/p>\n<ul>\n<li><code>0<\/code> - el recipiente es saludable<\/li>\n<li><code>1<\/code> - el contenedor no es saludable<\/li>\n<\/ul>\n<p>En nuestra instrucci\u00f3n, <code>\/piscinas<\/code> La API REST se invoca utilizando curl. Si el comando falla, se mostrar\u00e1 un estado de salida <code>1<\/code> y esto marca al contenedor como no saludable para ese intento. Este comando Docker HEALTHCHECK se invoca cada 5 segundos. El contenedor se marca como no saludable si el comando no regresa con \u00e9xito en 3 segundos. Ejecute el contenedor como:<\/p>\n<pre class=\"lang:default decode:true\">docker run -d --name db arungupta\/couchbase:latest<\/pre>\n<p>Compruebe el estado del contenedor Docker:<\/p>\n<pre class=\"lang:default decode:true\">docker ps\r\nCONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS                            PORTS                                                        NAMES\r\n55b14302671e        arungupta\/couchbase:latest   \"\/entrypoint.sh \/opt\/\"   2 seconds ago       Up 1 seconds (health: starting)   8091-8094\/tcp, 11207\/tcp, 11210-11211\/tcp, 18091-18093\/tcp   db<\/pre>\n<p>Observe c\u00f3mo <code>salud: inicio<\/code> se informa del estado en <code>ESTADO<\/code> columna. Comprobaci\u00f3n despu\u00e9s de unos segundos muestra el estado:<\/p>\n<pre class=\"lang:default decode:true\">docker ps\r\nCONTAINER ID        IMAGE                        COMMAND                  CREATED              STATUS                        PORTS                                                        NAMES\r\n55b14302671e        arungupta\/couchbase:latest   \"\/entrypoint.sh \/opt\/\"   About a minute ago   Up About a minute (healthy)   8091-8094\/tcp, 11207\/tcp, 11210-11211\/tcp, 18091-18093\/tcp   db<\/pre>\n<p>Y ahora se informa de que est\u00e1 sano. M\u00e1s detalles <code>HEALTHCHECK<\/code> instrucciones en <a href=\"https:\/\/docs.docker.com\/engine\/reference\/builder\/#\/healthcheck\">docs.docker.com<\/a>. Ahora bien, si est\u00e1 ejecutando una imagen que no tiene <code>HEALTHCHECK<\/code> entonces la instrucci\u00f3n\u00a0<code>docker run<\/code>\u00a0para especificar valores similares. Un comando equivalente en tiempo de ejecuci\u00f3n ser\u00eda:<\/p>\n<pre class=\"lang:default decode:true\">docker run -d --name db --health-cmd \"curl --fail https:\/\/localhost:8091\/pools || exit 1\" --health-interval=5s --timeout=3s arungupta\/couchbase<\/pre>\n<p>Los 5 \u00faltimos controles de salud de un contenedor pueden obtenerse utilizando la funci\u00f3n <code>docker inspeccionar<\/code> mando:<\/p>\n<pre class=\"lang:default decode:true\">docker inspect --format='{{json .State.Health}}' db<\/pre>\n<p>La salida se muestra como:<\/p>\n<pre class=\"lang:default decode:true\">{\r\n  \"Status\": \"healthy\",\r\n  \"FailingStreak\": 0,\r\n  \"Log\": [\r\n    {\r\n      \"Start\": \"2016-11-12T03:23:03.351561Z\",\r\n      \"End\": \"2016-11-12T03:23:03.422176171Z\",\r\n      \"ExitCode\": 0,\r\n      \"Output\": \"  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Currentn                                 Dload  Upload   Total   Spent    Left  Speednr  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0r100   768  100   768    0     0   595k      0 --:--:-- --:--:-- --:--:--  750kn{\"isAdminCreds\":true,\"isROAdminCreds\":false,\"isEnterprise\":true,\"pools\":[{\"name\":\"default\",\"uri\":\"\/pools\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"streamingUri\":\"\/poolsStreaming\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\"}],\"settings\":{\"maxParallelIndexers\":\"\/settings\/maxParallelIndexers?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"viewUpdateDaemon\":\"\/settings\/viewUpdateDaemon?uuid=1b84cdbd136e4e8466049dd062dd6969\"},\"uuid\":\"1b84cdbd136e4e8466049dd062dd6969\",\"implementationVersion\":\"4.5.1-2844-enterprise\",\"componentsVersion\":{\"lhttpc\":\"1.3.0\",\"os_mon\":\"2.2.14\",\"public_key\":\"0.21\",\"asn1\":\"2.0.4\",\"kernel\":\"2.16.4\",\"ale\":\"4.5.1-2844-enterprise\",\"inets\":\"5.9.8\",\"ns_server\":\"4.5.1-2844-enterprise\",\"crypto\":\"3.2\",\"ssl\":\"5.3.3\",\"sasl\":\"2.3.4\",\"stdlib\":\"1.19.4\"}}\"\r\n    },\r\n    {\r\n      \"Start\": \"2016-11-12T03:23:08.423558928Z\",\r\n      \"End\": \"2016-11-12T03:23:08.510122392Z\",\r\n      \"ExitCode\": 0,\r\n      \"Output\": \"  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Currentn                                 Dload  Upload   Total   Spent    Left  Speednr  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0r100   768  100   768    0     0   309k      0 --:--:-- --:--:-- --:--:--  375kn{\"isAdminCreds\":true,\"isROAdminCreds\":false,\"isEnterprise\":true,\"pools\":[{\"name\":\"default\",\"uri\":\"\/pools\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"streamingUri\":\"\/poolsStreaming\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\"}],\"settings\":{\"maxParallelIndexers\":\"\/settings\/maxParallelIndexers?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"viewUpdateDaemon\":\"\/settings\/viewUpdateDaemon?uuid=1b84cdbd136e4e8466049dd062dd6969\"},\"uuid\":\"1b84cdbd136e4e8466049dd062dd6969\",\"implementationVersion\":\"4.5.1-2844-enterprise\",\"componentsVersion\":{\"lhttpc\":\"1.3.0\",\"os_mon\":\"2.2.14\",\"public_key\":\"0.21\",\"asn1\":\"2.0.4\",\"kernel\":\"2.16.4\",\"ale\":\"4.5.1-2844-enterprise\",\"inets\":\"5.9.8\",\"ns_server\":\"4.5.1-2844-enterprise\",\"crypto\":\"3.2\",\"ssl\":\"5.3.3\",\"sasl\":\"2.3.4\",\"stdlib\":\"1.19.4\"}}\"\r\n    },\r\n    {\r\n      \"Start\": \"2016-11-12T03:23:13.511446818Z\",\r\n      \"End\": \"2016-11-12T03:23:13.58141325Z\",\r\n      \"ExitCode\": 0,\r\n      \"Output\": \" {\"isAdminCreds\":true,\"isROAdminCreds\":false,\"isEnterprise\":true,\"pools\":[{\"name\":\"default\",\"uri\":\"\/pools\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"streamingUri\":\"\/poolsStreaming\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\"}],\"settings\":{\"maxParallelIndexers\":\"\/settings\/maxParallelIndexers?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"viewUpdateDaemon\":\"\/settings\/viewUpdateDaemon?uuid=1b84cdbd136e4e8466049dd062dd6969\"},\"uuid\":\"1b84cdbd136e4e8466049dd062dd6969\",\"implementationVersion\":\"4.5.1-2844-enterprise\",\"componentsVersion\":{\"lhttpc\":\"1.3.0\",\"os_mon\":\"2.2.14\",\"public_key\":\"0.21\",\"asn1\":\"2.0.4\",\"kernel\":\"2.16.4\",\"ale\":\"4.5.1-2844-enterprise\",\"inets\":\"5.9.8\",\"ns_server\":\"4.5.1-2844-enterprise\",\"crypto\":\"3.2\",\"ssl\":\"5.3.3\",\"sasl\":\"2.3.4\",\"stdlib\":\"1.19.4\"}} % Total    % Received % Xferd  Average Speed   Time    Time     Time  Currentn                                 Dload  Upload   Total   Spent    Left  Speednr  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0r100   768  100   768    0     0   248k      0 --:--:-- --:--:-- --:--:--  375kn\"\r\n    },\r\n    {\r\n      \"Start\": \"2016-11-12T03:23:18.583512367Z\",\r\n      \"End\": \"2016-11-12T03:23:18.677727356Z\",\r\n      \"ExitCode\": 0,\r\n      \"Output\": \"  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Currentn                                 Dlo{\"isAdminCreds\":true,\"isROAdminCreds\":false,\"isEnterprise\":true,\"pools\":[{\"name\":\"default\",\"uri\":\"\/pools\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"streamingUri\":\"\/poolsStreaming\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\"}],\"settings\":{\"maxParallelIndexers\":\"\/settings\/maxParallelIndexers?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"viewUpdateDaemon\":\"\/settings\/viewUpdateDaemon?uuid=1b84cdbd136e4e8466049dd062dd6969\"},\"uuid\":\"1b84cdbd136e4e8466049dd062dd6969\",\"implementationVersion\":\"4.5.1-2844-enterprise\",\"componentsVersion\":{\"lhttpc\":\"1.3.0\",\"os_mon\":\"2.2.14\",\"public_key\":\"0.21\",\"asn1\":\"2.0.4\",\"kernel\":\"2.16.4\",\"ale\":\"4.5.1-2844-enterprise\",\"inets\":\"5.9.8\",\"ns_server\":\"4.5.1-2844-enterprise\",\"crypto\":\"3.2\",\"ssl\":\"5.3.3\",\"sasl\":\"2.3.4\",\"stdlib\":\"1.19.4\"}}ad  Upload   Total   Spent    Left  Speednr  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0r100   768  100   768    0     0   307k      0 --:--:-- --:--:-- --:--:--  375kn\"\r\n    },\r\n    {\r\n      \"Start\": \"2016-11-12T03:23:23.679661467Z\",\r\n      \"End\": \"2016-11-12T03:23:23.782372291Z\",\r\n      \"ExitCode\": 0,\r\n      \"Output\": \"  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Currentn                                 Dload  Upload   Total   Spent    Left{\"isAdminCreds\":true,\"isROAdminCreds\":false,\"isEnterprise\":true,\"pools\":[{\"name\":\"default\",\"uri\":\"\/pools\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"streamingUri\":\"\/poolsStreaming\/default?uuid=1b84cdbd136e4e8466049dd062dd6969\"}],\"settings\":{\"maxParallelIndexers\":\"\/settings\/maxParallelIndexers?uuid=1b84cdbd136e4e8466049dd062dd6969\",\"viewUpdateDaemon\":\"\/settings\/viewUpdateDaemon?uuid=1b84cdbd136e4e8466049dd062dd6969\"},\"uuid\":\"1b84cdbd136e4e8466049dd062dd6969\",\"implementationVersion\":\"4.5.1-2844-enterprise\",\"componentsVersion\":{\"lhttpc\":\"1.3.0\",\"os_mon\":\"2.2.14\",\"public_key\":\"0.21\",\"asn1\":\"2.0.4\",\"kernel\":\"2.16.4\",\"ale\":\"4.5.1-2844-enterprise\",\"inets\":\"5.9.8\",\"ns_server\":\"4.5.1-2844-enterprise\",\"crypto\":\"3.2\",\"ssl\":\"5.3.3\",\"sasl\":\"2.3.4\",\"stdlib\":\"1.19.4\"}}  Speednr  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0r100   768  100   768    0     0   439k      0 --:--:-- --:--:-- --:--:--  750kn\"\r\n    }\r\n  ]\r\n}<\/pre>","protected":false},"excerpt":{"rendered":"<p>One of the new features in Docker 1.12 is how\u00a0health check for a container can be\u00a0baked into the image definition. And this can be overridden at the command line. Just like the CMD instruction,\u00a0there can be multiple HEALTHCHECK instructions in [&hellip;]<\/p>","protected":false},"author":58,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816],"tags":[],"ppma_author":[8933],"class_list":["post-2435","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.8 (Yoast SEO v25.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Docker Healthcheck Command Status for Unhealthy Containers<\/title>\n<meta name=\"description\" content=\"Find out how to improve outcomes and monitor the status of unhealthy containers in your Couchbase environment using the Docker HEALTHCHECK command.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/es\/docker-health-check-keeping-containers-healthy\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using the Docker Healthcheck Command\" \/>\n<meta property=\"og:description\" content=\"Find out how to improve outcomes and monitor the status of unhealthy containers in your Couchbase environment using the Docker HEALTHCHECK command.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/docker-health-check-keeping-containers-healthy\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-11-12T03:32:35+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-25T23:45:59+00:00\" \/>\n<meta name=\"author\" content=\"Arun Gupta, VP, Developer Advocacy, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@arungupta\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Arun Gupta, VP, Developer Advocacy, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/\"},\"author\":{\"name\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f\"},\"headline\":\"Using the Docker Healthcheck Command\",\"datePublished\":\"2016-11-12T03:32:35+00:00\",\"dateModified\":\"2023-01-25T23:45:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/\"},\"wordCount\":383,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/\",\"name\":\"Docker Healthcheck Command Status for Unhealthy Containers\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2016-11-12T03:32:35+00:00\",\"dateModified\":\"2023-01-25T23:45:59+00:00\",\"description\":\"Find out how to improve outcomes and monitor the status of unhealthy containers in your Couchbase environment using the Docker HEALTHCHECK command.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using the Docker Healthcheck Command\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f\",\"name\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8900a75409c646948fe0bd80f6240337\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g\",\"caption\":\"Arun Gupta, VP, Developer Advocacy, Couchbase\"},\"description\":\"Arun Gupta is the vice president of developer advocacy at Couchbase. He has built and led developer communities for 10+ years at Sun, Oracle, and Red Hat. He has deep expertise in leading cross-functional teams to develop and execute strategy, planning and execution of content, marketing campaigns, and programs. Prior to that he led engineering teams at Sun and is a founding member of the Java EE team. Gupta has authored more than 2,000 blog posts on technology. He has extensive speaking experience in more than 40 countries on myriad topics and is a JavaOne Rock Star for three years in a row. Gupta also founded the Devoxx4Kids chapter in the US and continues to promote technology education among children. An author of several books on technology, an avid runner, a globe trotter, a Java Champion, a JUG leader, NetBeans Dream Team member, and a Docker Captain, he is easily accessible at @arungupta.\",\"sameAs\":[\"https:\/\/x.com\/arungupta\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/arun-gupta\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Docker Healthcheck Command Status for Unhealthy Containers","description":"Find out how to improve outcomes and monitor the status of unhealthy containers in your Couchbase environment using the Docker HEALTHCHECK command.","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:\/\/www.couchbase.com\/blog\/es\/docker-health-check-keeping-containers-healthy\/","og_locale":"es_MX","og_type":"article","og_title":"Using the Docker Healthcheck Command","og_description":"Find out how to improve outcomes and monitor the status of unhealthy containers in your Couchbase environment using the Docker HEALTHCHECK command.","og_url":"https:\/\/www.couchbase.com\/blog\/es\/docker-health-check-keeping-containers-healthy\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-11-12T03:32:35+00:00","article_modified_time":"2023-01-25T23:45:59+00:00","author":"Arun Gupta, VP, Developer Advocacy, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@arungupta","twitter_misc":{"Written by":"Arun Gupta, VP, Developer Advocacy, Couchbase","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/"},"author":{"name":"Arun Gupta, VP, Developer Advocacy, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f"},"headline":"Using the Docker Healthcheck Command","datePublished":"2016-11-12T03:32:35+00:00","dateModified":"2023-01-25T23:45:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/"},"wordCount":383,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","articleSection":["Couchbase Server"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/","url":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/","name":"Docker Healthcheck Command Status for Unhealthy Containers","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2016-11-12T03:32:35+00:00","dateModified":"2023-01-25T23:45:59+00:00","description":"Find out how to improve outcomes and monitor the status of unhealthy containers in your Couchbase environment using the Docker HEALTHCHECK command.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/docker-health-check-keeping-containers-healthy\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Using the Docker Healthcheck Command"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"El blog de Couchbase","description":"Couchbase, la base de datos NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"El blog de Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/39d8caed0f536489b6aa6e8d31ee631f","name":"Arun Gupta, Vicepresidente, Defensa del Desarrollador, Couchbase","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8900a75409c646948fe0bd80f6240337","url":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","caption":"Arun Gupta, VP, Developer Advocacy, Couchbase"},"description":"Arun Gupta es vicepresidente de promoci\u00f3n de desarrolladores en Couchbase. Ha creado y dirigido comunidades de desarrolladores durante m\u00e1s de 10 a\u00f1os en Sun, Oracle y Red Hat. Tiene una gran experiencia en liderar equipos multidisciplinares para desarrollar y ejecutar estrategias, planificar y ejecutar contenidos, campa\u00f1as de marketing y programas. Anteriormente dirigi\u00f3 equipos de ingenier\u00eda en Sun y es miembro fundador del equipo Java EE. Gupta es autor de m\u00e1s de 2.000 entradas de blog sobre tecnolog\u00eda. Tiene una amplia experiencia como conferenciante en m\u00e1s de 40 pa\u00edses sobre innumerables temas y es una JavaOne Rock Star desde hace tres a\u00f1os consecutivos. Gupta tambi\u00e9n fund\u00f3 el cap\u00edtulo Devoxx4Kids en Estados Unidos y sigue promoviendo la educaci\u00f3n tecnol\u00f3gica entre los ni\u00f1os. Autor de varios libros sobre tecnolog\u00eda, \u00e1vido corredor, trotamundos, campe\u00f3n de Java, l\u00edder de JUG, miembro del Dream Team de NetBeans y capit\u00e1n de Docker, es f\u00e1cilmente accesible en @arungupta.","sameAs":["https:\/\/x.com\/arungupta"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/arun-gupta\/"}]}},"authors":[{"term_id":8933,"user_id":58,"is_guest":0,"slug":"arun-gupta","display_name":"Arun Gupta, VP, Developer Advocacy, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/f912e10b5f39748ee4f1a0b0da6f42747f0b3a94fe7acb511791468656f5e726?s=96&d=mm&r=g","author_category":"","last_name":"Gupta","first_name":"Arun","job_title":"","user_url":"","description":"Arun Gupta es vicepresidente de promoci\u00f3n de desarrolladores en Couchbase. Ha creado y dirigido comunidades de desarrolladores durante m\u00e1s de 10 a\u00f1os en Sun, Oracle y Red Hat. Tiene una gran experiencia en liderar equipos multidisciplinares para desarrollar y ejecutar estrategias, planificar y ejecutar contenidos, campa\u00f1as de marketing y programas. Anteriormente dirigi\u00f3 equipos de ingenier\u00eda en Sun y es miembro fundador del equipo Java EE.\r\n\r\nGupta es autor de m\u00e1s de 2.000 entradas de blog sobre tecnolog\u00eda. Tiene una amplia experiencia como conferenciante en m\u00e1s de 40 pa\u00edses sobre innumerables temas y es una JavaOne Rock Star desde hace tres a\u00f1os consecutivos. Gupta tambi\u00e9n fund\u00f3 el cap\u00edtulo Devoxx4Kids en Estados Unidos y sigue promoviendo la educaci\u00f3n tecnol\u00f3gica entre los ni\u00f1os. Autor de varios libros sobre tecnolog\u00eda, \u00e1vido corredor, trotamundos, campe\u00f3n de Java, l\u00edder de JUG, miembro del Dream Team de NetBeans y capit\u00e1n de Docker, es f\u00e1cilmente accesible en @arungupta."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2435","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/users\/58"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=2435"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2435\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=2435"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=2435"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=2435"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=2435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}