{"id":1056,"date":"2024-06-29T13:13:57","date_gmt":"2024-06-29T13:13:57","guid":{"rendered":"https:\/\/dsantana.uas.edu.mx\/?p=1056"},"modified":"2025-01-17T22:48:29","modified_gmt":"2025-01-17T22:48:29","slug":"docker-compose-yaml","status":"publish","type":"post","link":"https:\/\/dsantana.uas.edu.mx\/index.php\/2024\/06\/29\/docker-compose-yaml\/","title":{"rendered":"docker-compose.yaml"},"content":{"rendered":"\n<figure class=\"wp-block-image aligncenter size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"682\" height=\"163\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2024\/06\/Docker_container_engine_logo.png\" alt=\"\" class=\"wp-image-1013\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2024\/06\/Docker_container_engine_logo.png 682w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2024\/06\/Docker_container_engine_logo-300x72.png 300w\" sizes=\"(max-width: 682px) 100vw, 682px\" \/><\/figure>\n\n\n\n<p>Un archivo&nbsp;<strong>docker-compose.yaml<\/strong>&nbsp;representa la configuraci\u00f3n de una aplicaci\u00f3n multi-contenedor en Docker.&nbsp;En \u00e9l, se definen los servicios, redes y vol\u00famenes que componen la aplicaci\u00f3n, todo en un \u00fanico archivo YAML.<\/p>\n\n\n\n<p><strong>Crear el archivo docker-compose.yaml<\/strong><br>Este archivo orquesta los servicios utilizando el Dockerfile definido anteriormente.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>version: '3'\nservices:\n  webserver:\n    build: .\n    container_name: apache_web_server\n    ports:\n      - \"80:80\"\n    volumes:\n      - .\/html:\/var\/www\/html\n    networks:\n      - webnet\n\nnetworks:\n  webnet:\n    driver: bridge\n<\/code><\/pre>\n\n\n\n<p><strong>Crear el contenido HTML<br><\/strong>Crea un directorio <strong>html <\/strong>en el mismo directorio que contiene el archivo docker-compose.yaml. Dentro de ese directorio, crea un archivo index.html con contenido simple:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;!DOCTYPE html&gt;\n&lt;html lang=\"es\"&gt;\n&lt;head&gt;\n  &lt;meta charset=\"UTF-8\"&gt;\n  &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n  &lt;title&gt;P\u00e1gina de inicio&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n  &lt;h1&gt;\u00a1Bienvenido al servidor web Dockerizado!&lt;\/h1&gt;\n  &lt;p&gt;Este es un servidor web b\u00e1sico utilizando Docker, Apache y Debian 12.&lt;\/p&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n\n\n<p><strong>Construir y ejecutar el contenedor<\/strong><br>Navega al directorio donde est\u00e1n los archivos Dockerfile y docker-compose.yml.<br>Construye la imagen y levanta los contenedores con el siguiente comando:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>docker-compose up --build -d\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Un archivo&nbsp;docker-compose.yaml&nbsp;representa la configuraci\u00f3n de una aplicaci\u00f3n multi-contenedor en Docker.&nbsp;En \u00e9l, se definen los servicios, redes y vol\u00famenes que componen la aplicaci\u00f3n, todo en un \u00fanico archivo YAML. Crear el archivo docker-compose.yamlEste archivo orquesta los servicios utilizando el Dockerfile definido anteriormente. Crear el contenido HTMLCrea un directorio html en el mismo directorio que contiene el archivo docker-compose.yaml. Dentro de ese directorio, crea un archivo index.html con contenido simple: Construir y ejecutar el contenedorNavega al directorio donde est\u00e1n los archivos Dockerfile y docker-compose.yml.Construye la imagen y levanta los contenedores con el siguiente comando:<\/p>\n","protected":false},"author":1,"featured_media":1653,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[98,5,80,99,6,79],"tags":[],"class_list":["post-1056","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-contenedores","category-docencia","category-docker","category-docker-contenedores","category-talleres","category-virtualizacion"],"_links":{"self":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/1056","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/comments?post=1056"}],"version-history":[{"count":4,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/1056\/revisions"}],"predecessor-version":[{"id":1654,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/1056\/revisions\/1654"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/media\/1653"}],"wp:attachment":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/media?parent=1056"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/categories?post=1056"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/tags?post=1056"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}