{"id":1012,"date":"2024-06-28T01:24:21","date_gmt":"2024-06-28T01:24:21","guid":{"rendered":"https:\/\/dsantana.uas.edu.mx\/?p=1012"},"modified":"2025-01-17T22:42:42","modified_gmt":"2025-01-17T22:42:42","slug":"instalacion-y-configuracion-de-docker-en-debian-linux","status":"publish","type":"post","link":"https:\/\/dsantana.uas.edu.mx\/index.php\/2024\/06\/28\/instalacion-y-configuracion-de-docker-en-debian-linux\/","title":{"rendered":"Instalacion y configuracion de Docker en Debian Linux"},"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><strong>Docker <\/strong>es una plataforma de c\u00f3digo abierto que permite desarrollar, enviar y ejecutar aplicaciones dentro de contenedores.&nbsp;Los contenedores son entornos ligeros y port\u00e1tiles que incluyen todo lo necesario para ejecutar una aplicaci\u00f3n: c\u00f3digo, runtime, bibliotecas y configuraciones del sistema.<\/p>\n\n\n\n<p><strong>Ventajas de Docker:<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Portabilidad:<\/strong>&nbsp;Los contenedores Docker pueden ejecutarse en cualquier sistema operativo que soporte Docker, lo que facilita mover aplicaciones entre diferentes entornos.<\/li>\n\n\n\n<li><strong>Eficiencia:<\/strong>&nbsp;Los contenedores comparten el kernel del sistema operativo del host, lo que los hace m\u00e1s ligeros y r\u00e1pidos que las m\u00e1quinas virtuales.<\/li>\n\n\n\n<li><strong>Escalabilidad:<\/strong>&nbsp;Docker permite escalar aplicaciones f\u00e1cilmente, ya que se pueden desplegar m\u00faltiples contenedores de una misma aplicaci\u00f3n.<\/li>\n\n\n\n<li><strong>Aislamiento:<\/strong>&nbsp;Cada contenedor funciona de manera independiente, lo que mejora la seguridad y la estabilidad de las aplicaciones.<\/li>\n<\/ol>\n\n\n\n<p><strong>\u00bfC\u00f3mo funciona Docker?<\/strong><\/p>\n\n\n\n<p>Docker utiliza el kernel de Linux y sus caracter\u00edsticas, como los grupos de control y los espacios de nombres, para ejecutar procesos de manera aislada.&nbsp;Esto permite que m\u00faltiples contenedores se ejecuten en un solo host sin interferir entre s\u00ed.<\/p>\n\n\n\n<p><strong>Instalar Docker Engine<\/strong><\/p>\n\n\n\n<p>Esta secci\u00f3n describe c\u00f3mo instalar Docker Engine en Linux, tambi\u00e9n conocido como Docker CE. Docker Engine tambi\u00e9n est\u00e1 disponible para Windows, macOS y Linux a trav\u00e9s de Docker Desktop. Para obtener instrucciones sobre c\u00f3mo instalar Docker Desktop, consulte:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Escritorio Docker para Linux<\/li>\n\n\n\n<li>Escritorio Docker para Mac (macOS)<\/li>\n\n\n\n<li>Docker Desktop para Windows<\/li>\n<\/ul>\n\n\n\n<p><strong>Plataformas compatibles<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Plataforma<\/th><th class=\"has-text-align-center\" data-align=\"center\">x86_64\/amd64<\/th><th class=\"has-text-align-center\" data-align=\"center\">brazo64 \/ aarch64<\/th><th class=\"has-text-align-center\" data-align=\"center\">brazo (32 bits)<\/th><th class=\"has-text-align-center\" data-align=\"center\">ppc64le<\/th><th class=\"has-text-align-center\" data-align=\"center\">s390x<\/th><\/tr><\/thead><tbody><tr><td>CentOS<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><\/tr><tr><td>Debian<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><\/tr><tr><td>Fedora<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><\/tr><tr><td>Sistema operativo Raspberry Pi (32 bits)<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><\/tr><tr><td>Redacci\u00f3n Humanitaria Europea<\/td><td class=\"has-text-align-center\" data-align=\"center\">\ud83d\udea7<\/td><td class=\"has-text-align-center\" data-align=\"center\">\ud83d\udea7<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><\/tr><tr><td>LES<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><\/tr><tr><td>Ubuntu<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><\/tr><tr><td>Binarios<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u2705<\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><td class=\"has-text-align-center\" data-align=\"center\"><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udea7 = Experimental<\/p>\n\n\n\n<p><strong>Otras distribuciones de Linux<\/strong><\/p>\n\n\n\n<p><strong>Nota:<\/strong> Si bien las siguientes instrucciones pueden funcionar, Docker no prueba ni verifica la instalaci\u00f3n en derivados de distribuciones.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Si utilizas derivados de Debian como \u201cBunsenLabs Linux\u201d, \u201cKali Linux\u201d o \u201cLMDE\u201d (Mint basado en Debian) deber\u00e1s seguir las instrucciones de instalaci\u00f3n de Debian , sustituyendo la versi\u00f3n de tu distro por la correspondiente a Debian. Consulte la documentaci\u00f3n de su distribuci\u00f3n para encontrar qu\u00e9 versi\u00f3n de Debian corresponde con su versi\u00f3n derivada.<\/li>\n\n\n\n<li>Asimismo, si utilizas derivados de Ubuntu como \u201cKubuntu\u201d, \u201cLubuntu\u201d o \u201cXubuntu\u201d deber\u00e1s seguir las instrucciones de instalaci\u00f3n de Ubuntu , sustituyendo la versi\u00f3n de tu distro por la versi\u00f3n de Ubuntu correspondiente. Consulte la documentaci\u00f3n de su distribuci\u00f3n para encontrar qu\u00e9 versi\u00f3n de Ubuntu corresponde con su versi\u00f3n derivada.<\/li>\n\n\n\n<li>Algunas distribuciones de Linux proporcionan un paquete de Docker Engine a trav\u00e9s de sus repositorios de paquetes. Estos paquetes son creados y mantenidos por los mantenedores de paquetes de la distribuci\u00f3n de Linux y pueden tener diferencias en la configuraci\u00f3n o estar creados a partir de c\u00f3digo fuente modificado. Docker no participa en el lanzamiento de estos paquetes y usted debe informar cualquier error o problema relacionado con estos paquetes al rastreador de problemas de su distribuci\u00f3n de Linux.<\/li>\n<\/ul>\n\n\n\n<p>Docker proporciona&nbsp;archivos binarios&nbsp;para la instalaci\u00f3n manual de Docker Engine. Estos binarios est\u00e1n vinculados est\u00e1ticamente y puedes usarlos en cualquier distribuci\u00f3n de Linux.<\/p>\n\n\n\n<p><strong>Canales de lanzamiento<\/strong><\/p>\n\n\n\n<p>Docker Engine tiene dos tipos de canales de actualizaci\u00f3n,&nbsp;<strong>estable<\/strong>&nbsp;y&nbsp;<strong>de prueba<\/strong>&nbsp;:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>El canal&nbsp;<strong>estable<\/strong>&nbsp;le brinda las \u00faltimas versiones lanzadas para disponibilidad general.<\/li>\n\n\n\n<li>El canal&nbsp;<strong>de prueba<\/strong>&nbsp;le ofrece versiones preliminares que est\u00e1n listas para probarse antes de la disponibilidad general.<\/li>\n<\/ul>\n\n\n\n<p>Utilice el canal de prueba con precauci\u00f3n. Las versiones preliminares incluyen funciones experimentales y de acceso anticipado que est\u00e1n sujetas a cambios importantes.<\/p>\n\n\n\n<p><strong>Apoyo<\/strong><\/p>\n\n\n\n<p>Docker Engine es un proyecto de c\u00f3digo abierto, respaldado por los mantenedores del proyecto Moby y miembros de la comunidad. Docker no proporciona soporte para Docker Engine. Docker brinda soporte para productos Docker, incluido Docker Desktop, que utiliza Docker Engine como uno de sus componentes.<\/p>\n\n\n\n<p>Para obtener informaci\u00f3n sobre el proyecto de c\u00f3digo abierto, consulte el&nbsp;<a href=\"https:\/\/mobyproject.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">sitio web del proyecto Moby<\/a>&nbsp;.<\/p>\n\n\n\n<p><strong>Ruta de actualizaci\u00f3n<\/strong><\/p>\n\n\n\n<p>Las versiones de parches siempre son compatibles con su versi\u00f3n principal y secundaria.<\/p>\n\n\n\n<p><strong>Licencia<\/strong><\/p>\n\n\n\n<p>Docker Engine tiene la licencia Apache, versi\u00f3n 2.0. Consulte&nbsp;<a href=\"https:\/\/github.com\/moby\/moby\/blob\/master\/LICENSE\" target=\"_blank\" rel=\"noreferrer noopener\">LICENCIA<\/a>&nbsp;para obtener el texto completo de la licencia.<\/p>\n\n\n\n<p><strong>Informar sobre problemas de seguridad<\/strong><\/p>\n\n\n\n<p>Si descubre un problema de seguridad, le solicitamos que nos lo comunique de inmediato.<\/p>\n\n\n\n<p>NO presente un problema p\u00fablico. En su lugar, env\u00ede su informe de forma privada a&nbsp;<a href=\"https:\/\/docs.docker.com\/engine\/install\/\">security@docker.com<\/a>.<\/p>\n\n\n\n<p>Los informes de seguridad son muy apreciados y Docker se lo agradecer\u00e1 p\u00fablicamente.<\/p>\n\n\n\n<p><strong>Empezar<\/strong><\/p>\n\n\n\n<p>Despu\u00e9s de configurar Docker, puede aprender los conceptos b\u00e1sicos con&nbsp;Primeros pasos con Docker.<\/p>\n\n\n\n<p><strong>Instalar Docker Engine en Debian<\/strong><\/p>\n\n\n\n<p>Para comenzar a utilizar Docker Engine en Debian, aseg\u00farese de&nbsp;cumplir con los requisitos previos&nbsp;y luego siga los&nbsp;pasos de instalaci\u00f3n&nbsp;.<\/p>\n\n\n\n<p><strong>Prerrequisitos<\/strong><\/p>\n\n\n\n<p><strong>Nota:<\/strong> Si utiliza ufw o firewalld para administrar la configuraci\u00f3n del firewall, tenga en cuenta que cuando expone los puertos de contenedores mediante Docker, estos puertos omiten las reglas del firewall. Para obtener m\u00e1s informaci\u00f3n, consulte&nbsp;Docker y ufw.<\/p>\n\n\n\n<p><strong>Requisitos del sistema operativo<\/strong><\/p>\n\n\n\n<p>Para instalar Docker Engine, necesita la versi\u00f3n de 64 bits de una de estas versiones de Debian:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Debian Bookworm 12 (estable)<\/li>\n\n\n\n<li>Debian Bullseye 11 (versi\u00f3n estable antigua)<\/li>\n<\/ul>\n\n\n\n<p>Docker Engine para Debian es compatible con arquitecturas x86_64 (o amd64), armhf, arm64 y ppc64le (ppc64el).<\/p>\n\n\n\n<p><strong>Desinstalar versiones antiguas<\/strong><\/p>\n\n\n\n<p>Antes de poder instalar Docker Engine, debe desinstalar cualquier paquete conflictivo.<\/p>\n\n\n\n<p>Los encargados del mantenimiento de distribuciones proporcionan distribuciones no oficiales de paquetes Docker en sus repositorios. Debes desinstalar estos paquetes antes de poder instalar la versi\u00f3n oficial de Docker Engine.<\/p>\n\n\n\n<p>Los paquetes no oficiales a desinstalar son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>docker.io<\/code><\/li>\n\n\n\n<li><code>docker-compose<\/code><\/li>\n\n\n\n<li><code>docker-doc<\/code><\/li>\n\n\n\n<li><code>podman-docker<\/code><\/li>\n<\/ul>\n\n\n\n<p>Adem\u00e1s, Docker Engine depende de&nbsp;<code>containerd<\/code>y&nbsp;<code>runc<\/code>. Docker Engine agrupa estas dependencias en un solo paquete:&nbsp;<code>containerd.io<\/code>. Si ha instalado&nbsp;<code>containerd<\/code>o&nbsp;<code>runc<\/code>anteriormente, desinst\u00e1lelos para evitar conflictos con las versiones incluidas con Docker Engine.<\/p>\n\n\n\n<p>Ejecute el siguiente comando para desinstalar todos los paquetes conflictivos:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt remove $pkg; done<\/code><\/pre>\n\n\n\n<p><code>apt <\/code>podr\u00eda informar que no tiene ninguno de estos paquetes instalado.<\/p>\n\n\n\n<p>Las im\u00e1genes, los contenedores, los vol\u00famenes y las redes almacenados en&nbsp;<code>\/var\/lib\/docker\/<\/code>Docker no se eliminan autom\u00e1ticamente al desinstalar Docker. Si desea comenzar con una instalaci\u00f3n limpia y prefiere limpiar los datos existentes, lea la&nbsp;secci\u00f3n&nbsp;sobre desinstalaci\u00f3n de Docker Engine .<\/p>\n\n\n\n<p><strong>M\u00e9todos de instalaci\u00f3n<\/strong><\/p>\n\n\n\n<p>Puede instalar Docker Engine de diferentes formas, seg\u00fan sus necesidades:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Docker Engine viene incluido con&nbsp;Docker Desktop para Linux&nbsp;. Esta es la forma m\u00e1s f\u00e1cil y r\u00e1pida de comenzar.<\/li>\n\n\n\n<li>Configure e instale Docker Engine desde&nbsp;el repositorio&nbsp;de Docker<code>apt<\/code>&nbsp;.<\/li>\n\n\n\n<li>Inst\u00e1lelo manualmente&nbsp;y administre las actualizaciones manualmente.<\/li>\n\n\n\n<li>Utilice un&nbsp;script de conveniencia&nbsp;. Se recomienda \u00fanicamente para entornos de prueba y desarrollo.<\/li>\n<\/ul>\n\n\n\n<p><strong>Instalar usando repositorio <code>apt<\/code><\/strong><\/p>\n\n\n\n<p>Antes de instalar Docker Engine por primera vez en una nueva m\u00e1quina host, debe configurar el&nbsp;<code>apt<\/code>repositorio de Docker. Luego, puede instalar y actualizar Docker desde el repositorio.<\/p>\n\n\n\n<p><strong>1.- Configurar aptel repositorio de Docker.<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Add Docker's official GPG key:\nsudo apt update\nsudo apt install ca-certificates curl\nsudo install -m 0755 -d \/etc\/apt\/keyrings\nsudo curl -fsSL https:\/\/download.docker.com\/linux\/debian\/gpg -o \/etc\/apt\/keyrings\/docker.asc\nsudo chmod a+r \/etc\/apt\/keyrings\/docker.asc\n\n# Add the repository to Apt sources:\necho \\\n  \"deb &#91;arch=$(dpkg --print-architecture) signed-by=\/etc\/apt\/keyrings\/docker.asc] https:\/\/download.docker.com\/linux\/debian \\\n  $(. \/etc\/os-release &amp;&amp; echo \"$VERSION_CODENAME\") stable\" | \\\n  sudo tee \/etc\/apt\/sources.list.d\/docker.list &gt; \/dev\/null\nsudo apt update<\/code><\/pre>\n\n\n\n<p><strong>Nota: <\/strong>Si usa una distribuci\u00f3n derivada, como Kali Linux, es posible que deba sustituir la parte de este comando que se espera que imprima el nombre en clave de la versi\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>(. \/etc\/os-release &amp;&amp; echo \"$VERSION_CODENAME\")<\/code><\/pre>\n\n\n\n<p>Reemplace esta parte con el nombre en clave de la versi\u00f3n de Debian correspondiente, como bookworm.<\/p>\n\n\n\n<p><strong>2.- Instale los paquetes de Docker.<\/strong><\/p>\n\n\n\n<p>Para instalar la \u00faltima versi\u00f3n, ejecute:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin<\/code><\/pre>\n\n\n\n<p><strong>3.- Verifique que la instalaci\u00f3n sea exitosa ejecutando la hello-world imagen:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo docker run hello-world<\/code><\/pre>\n\n\n\n<p>Este comando descarga una imagen de prueba y la ejecuta en un contenedor. Cuando el contenedor se ejecuta, imprime un mensaje de confirmaci\u00f3n y sale.<\/p>\n\n\n\n<p>Ahora ha instalado e iniciado Docker Engine con \u00e9xito.<\/p>\n\n\n\n<p><strong>Conejo<\/strong><\/p>\n\n\n\n<p>\u00bfRecibes errores al intentar ejecutar sin root?<\/p>\n\n\n\n<p>El grupo de usuarios de&nbsp;docker existe pero no contiene usuarios, por lo que debe usarlo&nbsp;sudopara ejecutar comandos de Docker. Contin\u00fae con&nbsp;la postinstalaci\u00f3n de Linux&nbsp;para permitir que los usuarios sin privilegios ejecuten comandos de Docker y para otros pasos de configuraci\u00f3n opcionales.<\/p>\n\n\n\n<p><strong>Actualizar el motor Docker<\/strong><\/p>\n\n\n\n<p>Para actualizar Docker Engine, siga el paso 2 de las&nbsp;instrucciones de instalaci\u00f3n&nbsp;, eligiendo la nueva versi\u00f3n que desea instalar.<\/p>\n\n\n\n<p><strong>Instalar desde un paquete<\/strong><\/p>\n\n\n\n<p>Si no puede utilizar&nbsp;<code>apt<\/code> el repositorio de Docker para instalar Docker Engine, puede descargar el&nbsp;<code>deb<\/code>archivo correspondiente a su versi\u00f3n e instalarlo manualmente. Debe descargar un archivo nuevo cada vez que desee actualizar Docker Engine.<\/p>\n\n\n\n<p>1.- Ir a https:\/\/download.docker.com\/linux\/debian\/dists\/.<\/p>\n\n\n\n<p>2.- Seleccione su versi\u00f3n de Debian en la lista.<\/p>\n\n\n\n<p>3.- Vaya a pool\/stable\/ y seleccione la arquitectura aplicable ( amd64, armhf, arm64 o s390x).<\/p>\n\n\n\n<p>4.- Descargue los siguientes archivos .deb para los paquetes Docker Engine, CLI, Containerd y Docker Compose:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>containerd.io_&lt;version&gt;_&lt;arch&gt;.deb\ndocker-ce_&lt;version&gt;_&lt;arch&gt;.deb\ndocker-ce-cli_&lt;version&gt;_&lt;arch&gt;.deb\ndocker-buildx-plugin_&lt;version&gt;_&lt;arch&gt;.deb\ndocker-compose-plugin_&lt;version&gt;_&lt;arch&gt;.deb<\/code><\/pre>\n\n\n\n<p>5.- Instale los paquetes .deb. Actualice las rutas en el siguiente ejemplo donde descarg\u00f3 los paquetes de Docker.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo dpkg -i .\/containerd.io_&lt;version&gt;_&lt;arch&gt;.deb \\\n  .\/docker-ce_&lt;version&gt;_&lt;arch&gt;.deb \\\n  .\/docker-ce-cli_&lt;version&gt;_&lt;arch&gt;.deb \\\n  .\/docker-buildx-plugin_&lt;version&gt;_&lt;arch&gt;.deb \\\n  .\/docker-compose-plugin_&lt;version&gt;_&lt;arch&gt;.deb<\/code><\/pre>\n\n\n\n<p>El demonio Docker se inicia autom\u00e1ticamente.<\/p>\n\n\n\n<p>6.- Verifique que la instalaci\u00f3n de Docker Engine sea exitosa ejecutando la hello-worldimagen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo service docker start\nsudo docker run hello-world<\/code><\/pre>\n\n\n\n<p>Este comando descarga una imagen de prueba y la ejecuta en un contenedor. Cuando el contenedor se ejecuta, imprime un mensaje de confirmaci\u00f3n y sale.<\/p>\n\n\n\n<p>Ahora ha instalado e iniciado Docker Engine con \u00e9xito.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Consejo<\/strong><\/p>\n\n\n\n<p>\u00bfRecibes errores al intentar ejecutar sin root?<\/p>\n\n\n\n<p>El&nbsp;grupo de usuarios de docker existe pero no contiene usuarios, por lo que debe usarlo&nbsp;sudopara ejecutar comandos de Docker. Contin\u00fae con&nbsp;la postinstalaci\u00f3n de Linux&nbsp;para permitir que los usuarios sin privilegios ejecuten comandos de Docker y para otros pasos de configuraci\u00f3n opcionales.<\/p>\n\n\n\n<p><strong>Actualizar el motor Docker<\/strong><\/p>\n\n\n\n<p>Para actualizar Docker Engine, descargue los archivos del paquete m\u00e1s nuevos y repita el&nbsp;procedimiento de instalaci\u00f3n&nbsp;, se\u00f1alando los nuevos archivos.<\/p>\n\n\n\n<p><strong>Instalar usando el script de conveniencia<\/strong><\/p>\n\n\n\n<p>Docker proporciona un script de conveniencia en&nbsp;<a href=\"https:\/\/get.docker.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/get.docker.com\/<\/a>&nbsp;para instalar Docker en entornos de desarrollo de forma no interactiva. El script de conveniencia no se recomienda para entornos de producci\u00f3n, pero es \u00fatil para crear un script de aprovisionamiento adaptado a sus necesidades. Consulte tambi\u00e9n los pasos&nbsp;de instalaci\u00f3n mediante el repositorio&nbsp;para obtener informaci\u00f3n sobre los pasos de instalaci\u00f3n mediante el repositorio de paquetes. El c\u00f3digo fuente del script es de c\u00f3digo abierto y puede encontrarlo en el&nbsp;repositorio en GitHub dentro de <a href=\"https:\/\/github.com\/docker\/docker-install\" target=\"_blank\" rel=\"noreferrer noopener\"><code>docker-install<\/code><\/a>.<\/p>\n\n\n\n<p>Examine siempre los scripts descargados de Internet antes de ejecutarlos localmente. Antes de instalarlos, familiar\u00edcese con los posibles riesgos y limitaciones del script de conveniencia:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>El script requiere&nbsp;<code>root<\/code>o&nbsp;<code>sudo<\/code>privilegios para ejecutarse.<\/li>\n\n\n\n<li>El script intenta detectar su distribuci\u00f3n y versi\u00f3n de Linux y configurar su sistema de administraci\u00f3n de paquetes por usted.<\/li>\n\n\n\n<li>El script no le permite personalizar la mayor\u00eda de los par\u00e1metros de instalaci\u00f3n.<\/li>\n\n\n\n<li>El script instala dependencias y recomendaciones sin pedir confirmaci\u00f3n. Esto puede instalar una gran cantidad de paquetes, dependiendo de la configuraci\u00f3n actual de su m\u00e1quina host.<\/li>\n\n\n\n<li>De forma predeterminada, el script instala la \u00faltima versi\u00f3n estable de Docker, Containerd y Runc. Al utilizar este script para aprovisionar una m\u00e1quina, esto puede provocar actualizaciones inesperadas de la versi\u00f3n principal de Docker. Pruebe siempre las actualizaciones en un entorno de prueba antes de implementarlas en sus sistemas de producci\u00f3n.<\/li>\n\n\n\n<li>El script no est\u00e1 dise\u00f1ado para actualizar una instalaci\u00f3n de Docker existente. Al utilizar el script para actualizar una instalaci\u00f3n existente, es posible que las dependencias no se actualicen a la versi\u00f3n esperada, lo que genera versiones obsoletas.<\/li>\n<\/ul>\n\n\n\n<p><strong>Consejo<\/strong>: obtenga una vista previa de los pasos del script antes de ejecutarlo<\/p>\n\n\n\n<p>Puede ejecutar el script con la&nbsp;&#8211;dry-runopci\u00f3n de saber qu\u00e9 pasos ejecutar\u00e1 el script cuando se invoque:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -fsSL https:\/\/get.docker.com -o get-docker.sh\nsudo sh .\/get-docker.sh --dry-run<\/code><\/pre>\n\n\n\n<p>Este ejemplo descarga el script de&nbsp;<a href=\"https:\/\/get.docker.com\/\">https:\/\/get.docker.com\/<\/a>&nbsp;y lo ejecuta para instalar la \u00faltima versi\u00f3n estable de Docker en Linux:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ curl -fsSL https:\/\/get.docker.com -o get-docker.sh\n$ sudo sh get-docker.sh\nExecuting docker install script, commit: 7cae5f8b0decc17d6571f9f52eb840fbc13b2737\n&lt;...&gt;<\/code><\/pre>\n\n\n\n<p>Ahora ha instalado e iniciado Docker Engine con \u00e9xito. El&nbsp;<code>docker<\/code>&nbsp;servicio se inicia autom\u00e1ticamente en distribuciones basadas en Debian. En&nbsp;<code>RPM<\/code>distribuciones basadas, como CentOS, Fedora, RHEL o SLES, debe iniciarlo manualmente usando el comando&nbsp;<code>systemctl<\/code>o apropiado&nbsp;<code>service<\/code>. Como indica el mensaje, los usuarios que no son root no pueden ejecutar comandos de Docker de forma predeterminada.<\/p>\n\n\n\n<p><strong>\u00bfUtilizar Docker como usuario sin privilegios o instalarlo en modo sin ra\u00edz?<\/strong><\/p>\n\n\n\n<p>El script de instalaci\u00f3n requiere privilegios&nbsp;<code>root<\/code>o&nbsp;<code>sudo<\/code>privilegios para instalar y usar Docker. Si desea otorgar acceso a Docker a usuarios que no sean root, consulte los&nbsp;pasos posteriores a la instalaci\u00f3n para Linux&nbsp;. Tambi\u00e9n puede instalar Docker sin&nbsp;<code>root<\/code>privilegios o configurarlo para que se ejecute en modo sin root. Para obtener instrucciones sobre c\u00f3mo ejecutar Docker en modo sin root, consulte&nbsp;ejecutar el demonio de Docker como usuario que no sea root (modo sin root)&nbsp;.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"install-pre-releases\">Instalar versiones preliminares<\/h4>\n\n\n\n<p>Docker tambi\u00e9n proporciona un script conveniente en&nbsp;<a href=\"https:\/\/test.docker.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/test.docker.com\/<\/a>&nbsp;para instalar versiones preliminares de Docker en Linux. Este script es igual al script en&nbsp;<code>get.docker.com<\/code>, pero configura su administrador de paquetes para usar el canal de prueba del repositorio de paquetes de Docker. El canal de prueba incluye versiones estables y preliminares (versiones beta, versiones candidatas) de Docker. Utilice este script para obtener acceso temprano a nuevas versiones y evaluarlas en un entorno de prueba antes de que se lancen como estables.<\/p>\n\n\n\n<p>Para instalar la \u00faltima versi\u00f3n de Docker en Linux desde el canal de prueba, ejecute:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>curl -fsSL https:\/\/test.docker.com -o test-docker.sh\nsudo sh test-docker.sh<\/code><\/pre>\n\n\n\n<p><strong>Actualizar Docker despu\u00e9s de usar el script de conveniencia<\/strong><\/p>\n\n\n\n<p>Si instal\u00f3 Docker con el script de conveniencia, debe actualizar Docker directamente con su administrador de paquetes. No hay ninguna ventaja en volver a ejecutar el script de conveniencia. Volver a ejecutarlo puede causar problemas si intenta reinstalar repositorios que ya existen en la m\u00e1quina host.<\/p>\n\n\n\n<p><strong>Desinstalar el motor Docker<\/strong><\/p>\n\n\n\n<p>Desinstale los paquetes Docker Engine, CLI, contenedord y Docker Compose:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras<\/code><\/pre>\n\n\n\n<p>Las im\u00e1genes, contenedores, vol\u00famenes o archivos de configuraci\u00f3n personalizados de su host no se eliminan autom\u00e1ticamente. Para eliminar todas las im\u00e1genes, contenedores y vol\u00famenes:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo rm -rf \/var\/lib\/docker\nsudo rm -rf \/var\/lib\/containerd<\/code><\/pre>\n\n\n\n<p>Debe eliminar manualmente los archivos de configuraci\u00f3n editados.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Docker es una plataforma de c\u00f3digo abierto que permite desarrollar, enviar y ejecutar aplicaciones dentro de contenedores.&nbsp;Los contenedores son entornos ligeros y port\u00e1tiles que incluyen todo lo necesario para ejecutar una aplicaci\u00f3n: c\u00f3digo, runtime, bibliotecas y configuraciones del sistema. Ventajas de Docker: \u00bfC\u00f3mo funciona Docker? Docker utiliza el kernel de Linux y sus caracter\u00edsticas, como los grupos de control y los espacios de nombres, para ejecutar procesos de manera aislada.&nbsp;Esto permite que m\u00faltiples contenedores se ejecuten en un solo host sin interferir entre s\u00ed. Instalar Docker Engine Esta secci\u00f3n describe c\u00f3mo instalar Docker Engine en Linux, tambi\u00e9n conocido como Docker CE. Docker Engine tambi\u00e9n est\u00e1 disponible para Windows, macOS y Linux a trav\u00e9s de Docker Desktop. Para obtener instrucciones sobre c\u00f3mo instalar Docker Desktop, consulte: Plataformas compatibles Plataforma x86_64\/amd64 brazo64 \/ aarch64 brazo (32 bits) ppc64le s390x CentOS \u2705 \u2705 \u2705 Debian \u2705 \u2705 \u2705 \u2705 Fedora \u2705 \u2705 \u2705 Sistema operativo Raspberry Pi (32 bits) \u2705 Redacci\u00f3n Humanitaria Europea \ud83d\udea7 \ud83d\udea7 \u2705 LES \u2705 Ubuntu \u2705 \u2705 \u2705 \u2705 \u2705 Binarios \u2705 \u2705 \u2705 \ud83d\udea7 = Experimental Otras distribuciones de Linux Nota: Si bien las siguientes instrucciones pueden funcionar, Docker no prueba ni verifica la instalaci\u00f3n en derivados de distribuciones. Docker proporciona&nbsp;archivos binarios&nbsp;para la instalaci\u00f3n manual de Docker Engine. Estos binarios est\u00e1n vinculados est\u00e1ticamente y puedes usarlos en cualquier distribuci\u00f3n de Linux. Canales de lanzamiento Docker Engine tiene dos tipos de canales de actualizaci\u00f3n,&nbsp;estable&nbsp;y&nbsp;de prueba&nbsp;: Utilice el canal de prueba con precauci\u00f3n. Las versiones preliminares incluyen funciones experimentales y de acceso anticipado que est\u00e1n sujetas a cambios importantes. Apoyo Docker Engine es un proyecto de c\u00f3digo abierto, respaldado por los mantenedores del proyecto Moby y miembros de la comunidad. Docker no proporciona soporte para Docker Engine. Docker brinda soporte para productos Docker, incluido Docker Desktop, que utiliza Docker Engine como uno de sus componentes. Para obtener informaci\u00f3n sobre el proyecto de c\u00f3digo abierto, consulte el&nbsp;sitio web del proyecto Moby&nbsp;. Ruta de actualizaci\u00f3n Las versiones de parches siempre son compatibles con su versi\u00f3n principal y secundaria. Licencia Docker Engine tiene la licencia Apache, versi\u00f3n 2.0. Consulte&nbsp;LICENCIA&nbsp;para obtener el texto completo de la licencia. Informar sobre problemas de seguridad Si descubre un problema de seguridad, le solicitamos que nos lo comunique de inmediato. NO presente un problema p\u00fablico. En su lugar, env\u00ede su informe de forma privada a&nbsp;security@docker.com. Los informes de seguridad son muy apreciados y Docker se lo agradecer\u00e1 p\u00fablicamente. Empezar Despu\u00e9s de configurar Docker, puede aprender los conceptos b\u00e1sicos con&nbsp;Primeros pasos con Docker. Instalar Docker Engine en Debian Para comenzar a utilizar Docker Engine en Debian, aseg\u00farese de&nbsp;cumplir con los requisitos previos&nbsp;y luego siga los&nbsp;pasos de instalaci\u00f3n&nbsp;. Prerrequisitos Nota: Si utiliza ufw o firewalld para administrar la configuraci\u00f3n del firewall, tenga en cuenta que cuando expone los puertos de contenedores mediante Docker, estos puertos omiten las reglas del firewall. Para obtener m\u00e1s informaci\u00f3n, consulte&nbsp;Docker y ufw. Requisitos del sistema operativo Para instalar Docker Engine, necesita la versi\u00f3n de 64 bits de una de estas versiones de Debian: Docker Engine para Debian es compatible con arquitecturas x86_64 (o amd64), armhf, arm64 y ppc64le (ppc64el). Desinstalar versiones antiguas Antes de poder instalar Docker Engine, debe desinstalar cualquier paquete conflictivo. Los encargados del mantenimiento de distribuciones proporcionan distribuciones no oficiales de paquetes Docker en sus repositorios. Debes desinstalar estos paquetes antes de poder instalar la versi\u00f3n oficial de Docker Engine. Los paquetes no oficiales a desinstalar son: Adem\u00e1s, Docker Engine depende de&nbsp;containerdy&nbsp;runc. Docker Engine agrupa estas dependencias en un solo paquete:&nbsp;containerd.io. Si ha instalado&nbsp;containerdo&nbsp;runcanteriormente, desinst\u00e1lelos para evitar conflictos con las versiones incluidas con Docker Engine. Ejecute el siguiente comando para desinstalar todos los paquetes conflictivos: apt podr\u00eda informar que no tiene ninguno de estos paquetes instalado. Las im\u00e1genes, los contenedores, los vol\u00famenes y las redes almacenados en&nbsp;\/var\/lib\/docker\/Docker no se eliminan autom\u00e1ticamente al desinstalar Docker. Si desea comenzar con una instalaci\u00f3n limpia y prefiere limpiar los datos existentes, lea la&nbsp;secci\u00f3n&nbsp;sobre desinstalaci\u00f3n de Docker Engine . M\u00e9todos de instalaci\u00f3n Puede instalar Docker Engine de diferentes formas, seg\u00fan sus necesidades: Instalar usando repositorio apt Antes de instalar Docker Engine por primera vez en una nueva m\u00e1quina host, debe configurar el&nbsp;aptrepositorio de Docker. Luego, puede instalar y actualizar Docker desde el repositorio. 1.- Configurar aptel repositorio de Docker. Nota: Si usa una distribuci\u00f3n derivada, como Kali Linux, es posible que deba sustituir la parte de este comando que se espera que imprima el nombre en clave de la versi\u00f3n: Reemplace esta parte con el nombre en clave de la versi\u00f3n de Debian correspondiente, como bookworm. 2.- Instale los paquetes de Docker. Para instalar la \u00faltima versi\u00f3n, ejecute: 3.- Verifique que la instalaci\u00f3n sea exitosa ejecutando la hello-world imagen: Este comando descarga una imagen de prueba y la ejecuta en un contenedor. Cuando el contenedor se ejecuta, imprime un mensaje de confirmaci\u00f3n y sale. Ahora ha instalado e iniciado Docker Engine con \u00e9xito. Conejo \u00bfRecibes errores al intentar ejecutar sin root? El grupo de usuarios de&nbsp;docker existe pero no contiene usuarios, por lo que debe usarlo&nbsp;sudopara ejecutar comandos de Docker. Contin\u00fae con&nbsp;la postinstalaci\u00f3n de Linux&nbsp;para permitir que los usuarios sin privilegios ejecuten comandos de Docker y para otros pasos de configuraci\u00f3n opcionales. Actualizar el motor Docker Para actualizar Docker Engine, siga el paso 2 de las&nbsp;instrucciones de instalaci\u00f3n&nbsp;, eligiendo la nueva versi\u00f3n que desea instalar. Instalar desde un paquete Si no puede utilizar&nbsp;apt el repositorio de Docker para instalar Docker Engine, puede descargar el&nbsp;debarchivo correspondiente a su versi\u00f3n e instalarlo manualmente. Debe descargar un archivo nuevo cada vez que desee actualizar Docker Engine. 1.- Ir a https:\/\/download.docker.com\/linux\/debian\/dists\/. 2.- Seleccione su versi\u00f3n de Debian en la lista. 3.- Vaya a pool\/stable\/ y seleccione la arquitectura aplicable ( amd64, armhf, arm64 o s390x). 4.- Descargue los siguientes archivos .deb para los paquetes Docker Engine, CLI, Containerd y Docker Compose: 5.- Instale los paquetes .deb. Actualice las rutas en el siguiente ejemplo donde descarg\u00f3 los paquetes de Docker. El demonio Docker se inicia autom\u00e1ticamente. 6.- Verifique que la instalaci\u00f3n de Docker Engine sea exitosa ejecutando la hello-worldimagen: Este comando<\/p>\n","protected":false},"author":1,"featured_media":1650,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[98,5,80,99,6,79],"tags":[],"class_list":["post-1012","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\/1012","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=1012"}],"version-history":[{"count":27,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/1012\/revisions"}],"predecessor-version":[{"id":1651,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/1012\/revisions\/1651"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/media\/1650"}],"wp:attachment":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/media?parent=1012"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/categories?post=1012"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/tags?post=1012"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}