{"id":1362,"date":"2024-07-23T12:38:34","date_gmt":"2024-07-23T12:38:34","guid":{"rendered":"https:\/\/dockerpros.com\/?post_type=glossary&#038;p=1362"},"modified":"2024-07-23T12:38:34","modified_gmt":"2024-07-23T12:38:34","slug":"dockerfile-sshpara-crear-una-imagen-de-docker-con-ssh-habilitado-puedes-seguir-estos-pasos1-crea-un-archivo-dockerfile-con-el-siguiente-contenidodockerfilefrom-ubuntulatestrun-apt-get","status":"publish","type":"glossary","link":"https:\/\/dockerpros.com\/es\/wiki\/dockerfile-ssh\/","title":{"rendered":"Dockerfile \u2013ssh"},"content":{"rendered":"<h1>Understanding Dockerfile \u2013ssh: An Advanced Guide<\/h1>\n<p>In the realm of modern software development, Docker has emerged as a leading tool for containerization, allowing developers to build, ship, and <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">run<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> aplicaciones en entornos aislados. Una de las funciones avanzadas introducidas en Docker BuildKit es la <code>--ssh<\/code> opci\u00f3n para Dockerfiles. Esta potente funci\u00f3n facilita un manejo seguro y eficiente de las claves SSH durante el proceso de construcci\u00f3n, permitiendo a los desarrolladores acceder a repositorios privados y otros recursos seguros sin comprometer datos sensibles. Este art\u00edculo profundiza en la <code>--ssh<\/code> caracter\u00edstica de los Dockerfiles, explorando su funcionamiento, casos de uso, mejores pr\u00e1cticas e implicaciones de seguridad.<\/p>\n<h2>Docker BuildKit es una herramienta de construcci\u00f3n de im\u00e1genes Docker que mejora significativamente el rendimiento, la seguridad y la experiencia del usuario en comparaci\u00f3n con el sistema de construcci\u00f3n tradicional de Docker. BuildKit fue introducido en Docker 18.09 y se ha convertido en el sistema de construcci\u00f3n predeterminado en versiones m\u00e1s recientes de Docker.\n\nBuildKit ofrece varias ventajas sobre el sistema de construcci\u00f3n tradicional de Docker:\n\n1. Construcci\u00f3n paralela: BuildKit puede construir m\u00faltiples etapas de un Dockerfile en paralelo, lo que acelera significativamente el proceso de construcci\u00f3n.\n\n2. Almacenamiento en cach\u00e9 eficiente: BuildKit utiliza un sistema de cach\u00e9 m\u00e1s inteligente que reduce la necesidad de reconstruir capas innecesarias.\n\n3. Mejor manejo de secretos: BuildKit proporciona una forma m\u00e1s segura de manejar secretos durante el proceso de construcci\u00f3n.\n\n4. Construcci\u00f3n incremental: BuildKit permite construir im\u00e1genes de forma incremental, lo que es \u00fatil para grandes proyectos con m\u00faltiples componentes.\n\n5. Soporte para montajes: BuildKit permite montar archivos y directorios en el contexto de construcci\u00f3n, lo que facilita el uso de herramientas externas durante la construcci\u00f3n.\n\n6. Construcci\u00f3n sin ra\u00edz: BuildKit puede construir im\u00e1genes sin requerir privilegios de ra\u00edz, lo que mejora la seguridad.\n\n7. Construcci\u00f3n distribuida: BuildKit puede distribuir la carga de trabajo de construcci\u00f3n entre m\u00faltiples nodos, lo que es \u00fatil para construir im\u00e1genes grandes o complejas.\n\nPara habilitar BuildKit, puedes establecer la variable de entorno DOCKER_BUILDKIT=1 antes de ejecutar el comando docker build, o agregar la siguiente l\u00ednea a tu archivo de configuraci\u00f3n de Docker:\n\n```\nDOCKER_BUILDKIT=1\n```\n\nBuildKit tambi\u00e9n introduce un nuevo formato de Dockerfile llamado \"frontend\", que permite un mayor control sobre el proceso de construcci\u00f3n y facilita la creaci\u00f3n de im\u00e1genes m\u00e1s complejas.\n\nEn resumen, Docker BuildKit es una herramienta poderosa que mejora significativamente el proceso de construcci\u00f3n de im\u00e1genes Docker, ofreciendo un mejor rendimiento, seguridad y flexibilidad en comparaci\u00f3n con el sistema de construcci\u00f3n tradicional de Docker.<\/h2>\n<p>Antes de discutir el <code>--ssh<\/code> opci\u00f3n, es esencial comprender Docker BuildKit. Introducido como una funci\u00f3n experimental en Docker 18.09, BuildKit es un subsistema de construcci\u00f3n moderno que mejora el Docker. <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> building process. It supports parallel builds, cache management, and various build contexts, all of which contribute to faster and more efficient builds. The <code>--ssh<\/code> option is one of the many benefits of using BuildKit, allowing for improved security and flexibility.<\/p>\n<h2>Enabling Docker BuildKit<\/h2>\n<p>To utilize the <code>--ssh<\/code> Para utilizar esta funci\u00f3n, debes habilitar Docker BuildKit. Puedes hacerlo configurando una variable de entorno o usando la l\u00ednea de comandos de Docker. As\u00ed es como se habilita BuildKit desde la l\u00ednea de comandos:<\/p>\n<pre><code class=\"language-bash\">DOCKER_BUILDKIT=1 docker build .<\/code><\/pre>\n<p>Alternatively, you can <span class=\"glossaryai-tooltip glossary-term-674\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/add\/\" target=\"_blank\">a\u00f1adir<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">La instrucci\u00f3n ADD en Docker es un comando utilizado en Dockerfiles para copiar archivos y directorios desde una m\u00e1quina anfitriona hacia una imagen de Docker durante el proceso de construcci\u00f3n. No solo facilita la transferencia de archivos locales, sino que tambi\u00e9n proporciona funcionalidades adicionales, como extraer autom\u00e1ticamente archivos comprimidos y obtener archivos remotos a trav\u00e9s de HTTP o HTTPS.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/add\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> la siguiente l\u00ednea a su archivo de configuraci\u00f3n de Docker (generalmente ubicado en <code>\/etc\/docker\/daemon.json<\/code>):<\/p>\n<pre><code class=\"language-json\">{\n  \"features\": {\n    \"buildkit\": true\n  }\n}<\/code><\/pre>\n<p>After making changes, restart the Docker <span class=\"glossaryai-tooltip glossary-term-667\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/daemon\/\" target=\"_blank\">servicio<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un demonio es un proceso en segundo plano en inform\u00e1tica que se ejecuta de manera aut\u00f3noma, realizando tareas sin intervenci\u00f3n del usuario. Generalmente gestiona funciones a nivel de sistema o de aplicaci\u00f3n, mejorando la eficiencia.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/daemon\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> para aplicar la nueva configuraci\u00f3n.<\/p>\n<h2>Understanding the \u2013ssh Option<\/h2>\n<p>El <code>--ssh<\/code> option allows users to forward SSH agent connections to the build process. This functionality is crucial when your Docker <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> requires access to private repositories, APIs, or servers that necessitate SSH authentication. By using <code>--ssh<\/code>, you can ensure that your SSH keys remain secure, as they are not embedded in the final <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, thus reducing the risk of leaking sensitive credentials.<\/p>\n<h3>Sintaxis<\/h3>\n<p>La sintaxis b\u00e1sica para usar el <code>--ssh<\/code> la opci\u00f3n en un comando docker build es la siguiente<\/p>\n<pre><code class=\"language-bash\">docker build --ssh default=~\/.ssh\/id_rsa .<\/code><\/pre>\n<p>In this example, <code>predeterminado<\/code> is an alias for the SSH key, and the path specifies the location of the private key on your host machine.<\/p>\n<h3>Sintaxis de Dockerfile<\/h3>\n<p>Dentro de la <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un Dockerfile es un script que contiene una serie de instrucciones para automatizar la creaci\u00f3n de im\u00e1genes Docker. Especifica la imagen base, las dependencias de la aplicaci\u00f3n y la configuraci\u00f3n, facilitando el despliegue consistente en diferentes entornos.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, puedes usar el <code><span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">CORRE<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span><\/code> mando con el <code>--montaje<\/code> flag to access the SSH key during the build process. Here\u2019s an example:<\/p>\n<pre><code class=\"language-dockerfile\"># syntax=docker\/dockerfile:1.2\n\nFROM alpine:latest\n\n# Use the SSH key for private operations\n<span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">CORRE<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --mount=type=ssh git clone git@github.com:your-private-repo.git<\/code><\/pre>\n<h3>Acceso seguro a repositorios privados<\/h3>\n<p>A common use case for the <code>--ssh<\/code> option is accessing private Git repositories during the build process. This allows you to clone or fetch code securely without exposing your SSH private key in the <span class=\"glossaryai-tooltip glossary-term-739\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image-layers\/\" target=\"_blank\">image layers<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Las capas son componentes fundamentales en el software de dise\u00f1o y edici\u00f3n gr\u00e1fica, permitiendo la manipulaci\u00f3n no destructiva de elementos. Cada capa puede contener im\u00e1genes, efectos o ajustes diferentes, lo que posibilita un control preciso sobre la composici\u00f3n y los efectos visuales.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image-layers\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. As\u00ed es como puedes lograrlo:<\/p>\n<ol>\n<li>\n<p><strong>Clone a Private <span class=\"glossaryai-tooltip glossary-term-659\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\" target=\"_blank\">Repository<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un repositorio es una ubicaci\u00f3n centralizada donde se almacenan, gestionan y mantienen datos, c\u00f3digo o documentos. Facilita el control de versiones, la colaboraci\u00f3n y el intercambio eficiente de recursos entre los usuarios.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\">More \u00bb<\/a><\/span><\/span><span class=\"gai-tooltip-video-wrapper\"><span class=\"gai-tooltip-video\" data-src=\"https:\/\/www.youtube.com\/embed\/_OXj8BGxNPY?rel=0&#038;modestbranding=1\"><\/span><\/span><\/span><\/span><\/span><\/strong>Puedes usar el <code><span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">CORRE<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span><\/code> mando con el <code>--montaje<\/code> directive to clone a private <span class=\"glossaryai-tooltip glossary-term-659\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\" target=\"_blank\">repositorio<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un repositorio es una ubicaci\u00f3n centralizada donde se almacenan, gestionan y mantienen datos, c\u00f3digo o documentos. Facilita el control de versiones, la colaboraci\u00f3n y el intercambio eficiente de recursos entre los usuarios.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\">More \u00bb<\/a><\/span><\/span><span class=\"gai-tooltip-video-wrapper\"><span class=\"gai-tooltip-video\" data-src=\"https:\/\/www.youtube.com\/embed\/_OXj8BGxNPY?rel=0&#038;modestbranding=1\"><\/span><\/span><\/span><\/span><\/span> directly:<\/p>\n<pre><code class=\"language-dockerfile\"># syntax=docker\/dockerfile:1.2\n\nFROM alpine:latest\n\n<span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">CORRE<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --mount=type=ssh git clone git@github.com:your-private-repo.git<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Using Multiple SSH Keys<\/strong>: If you have multiple keys or need to specify different identities, you can set additional SSH options in your <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un Dockerfile es un script que contiene una serie de instrucciones para automatizar la creaci\u00f3n de im\u00e1genes Docker. Especifica la imagen base, las dependencias de la aplicaci\u00f3n y la configuraci\u00f3n, facilitando el despliegue consistente en diferentes entornos.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>:<\/p>\n<pre><code class=\"language-dockerfile\"># syntax=docker\/dockerfile:1.2\n\nFROM alpine:latest\n\n<span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">CORRE<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --mount=type=ssh,id=my_id git clone git@github.com:your-private-repo.git<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>In this example, <code>mi_id<\/code> Se refiere a una clave SSH agregada en el comando de compilaci\u00f3n de Docker utilizando <code>--ssh<\/code>.<\/p>\n<h2>Buenas pr\u00e1cticas para usar \u2013ssh<\/h2>\n<p>Al usar el <code>--ssh<\/code> opci\u00f3n, es esencial seguir las mejores pr\u00e1cticas para maximizar la seguridad y la eficiencia:<\/p>\n<h3>1. Limitar la exposici\u00f3n de claves SSH<\/h3>\n<p>Aseg\u00farese de que solo las claves SSH necesarias se reenv\u00eden al proceso de compilaci\u00f3n. Utilice permisos m\u00ednimos y evite agregar claves que no sean necesarias para la compilaci\u00f3n. <\/p>\n<h3>2. Utilice Alias para las Claves\n\nEn el ejemplo anterior, el nombre de la clave es el mismo que el nombre de la variable. Sin embargo, esto no siempre es as\u00ed. A veces, es posible que desee utilizar un nombre de clave diferente al nombre de la variable. En tales casos, puede utilizar alias para las claves.\n\nPor ejemplo, supongamos que tiene una variable llamada `firstName` y desea utilizarla como la clave `name` en el objeto. Puede hacerlo de la siguiente manera:\n\n```javascript\nconst firstName = \"John\";\nconst person = { name: firstName };\nconsole.log(person); \/\/ { name: \"John\" }\n```\n\nEn este ejemplo, la clave `name` se asigna al valor de la variable `firstName`. Esto le permite utilizar un nombre de clave diferente al nombre de la variable.\n\nLos alias para las claves son \u00fatiles cuando desea utilizar nombres de claves m\u00e1s descriptivos o cuando necesita seguir una convenci\u00f3n de nomenclatura espec\u00edfica. Tambi\u00e9n pueden ser \u00fatiles cuando est\u00e1 trabajando con datos de una API o una base de datos que utiliza nombres de claves diferentes a los nombres de las variables en su c\u00f3digo.\n\nRecuerde que los alias para las claves solo funcionan cuando se utilizan inicializadores de objetos. No se pueden utilizar con el m\u00e9todo `Object.assign()` o con el constructor `Object()`.<\/h3>\n<p>Utilize aliases to differentiate between multiple SSH keys. This practice can help clarify which key is being used for which operation, thereby enhancing security and reducing the risk of accidental exposure.<\/p>\n<h3>3. Separate Build Contexts<\/h3>\n<p>Cuando se trabaja con m\u00faltiples servicios o microservicios, considere separar los contextos de compilaci\u00f3n. Este enfoque garantiza que las claves SSH y los datos sensibles necesarios para uno <span class=\"glossaryai-tooltip glossary-term-681\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/service\/\" target=\"_blank\">servicio<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Service refers to the act of providing assistance or support to fulfill specific needs or requirements. In various domains, it encompasses customer service, technical support, and professional services, emphasizing efficiency and user satisfaction.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/service\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> no se filtren en el contexto de compilaci\u00f3n de otro servicio.<\/p>\n<h3>4. Rota regularmente las claves SSH\n\nEs una buena pr\u00e1ctica rotar las claves SSH peri\u00f3dicamente, especialmente para las claves con acceso privilegiado. La rotaci\u00f3n de claves SSH ayuda a mitigar el riesgo de claves comprometidas y garantiza que solo las personas autorizadas tengan acceso a tus sistemas.\n\nPara rotar las claves SSH, sigue estos pasos:\n\n1. Genera un nuevo par de claves SSH utilizando el comando ssh-keygen.\n2. Copia la nueva clave p\u00fablica en los servidores remotos utilizando el comando ssh-copy-id.\n3. Prueba la nueva clave SSH para asegurarte de que funciona correctamente.\n4. Elimina la clave SSH antigua de los servidores remotos y de cualquier otro lugar donde se haya utilizado.\n5. Actualiza cualquier configuraci\u00f3n o script que haga referencia a la clave SSH antigua.\n\nAl rotar regularmente las claves SSH, puedes reducir el riesgo de acceso no autorizado y mantener la seguridad de tus sistemas.<\/h3>\n<p>Para mejorar la seguridad, rote peri\u00f3dicamente sus claves SSH. Esta pr\u00e1ctica debe formar parte de su higiene de seguridad general y puede ayudar a prevenir el acceso no autorizado.<\/p>\n<h3>5. Aprovecha el almacenamiento en cach\u00e9 de compilaci\u00f3n<\/h3>\n<p>Utilize Docker&#8217;s caching mechanism to speed up builds. By correctly structuring your <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un Dockerfile es un script que contiene una serie de instrucciones para automatizar la creaci\u00f3n de im\u00e1genes Docker. Especifica la imagen base, las dependencias de la aplicaci\u00f3n y la configuraci\u00f3n, facilitando el despliegue consistente en diferentes entornos.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, you can cache layers and avoid unnecessary rebuilds, making your CI\/CD pipeline more efficient.<\/p>\n<h2>Consideraciones de seguridad<\/h2>\n<p>While the <code>--ssh<\/code> option greatly enhances build security, it\u2019s crucial to remain aware of potential risks:<\/p>\n<h3>1. Avoid Hardcoding Secrets<\/h3>\n<p>Never hardcode sensitive information, including SSH keys, directly into your <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un Dockerfile es un script que contiene una serie de instrucciones para automatizar la creaci\u00f3n de im\u00e1genes Docker. Especifica la imagen base, las dependencias de la aplicaci\u00f3n y la configuraci\u00f3n, facilitando el despliegue consistente en diferentes entornos.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. This practice could lead to accidental exposure through <span class=\"glossaryai-tooltip glossary-term-739\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image-layers\/\" target=\"_blank\">image layers<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Las capas son componentes fundamentales en el software de dise\u00f1o y edici\u00f3n gr\u00e1fica, permitiendo la manipulaci\u00f3n no destructiva de elementos. Cada capa puede contener im\u00e1genes, efectos o ajustes diferentes, lo que posibilita un control preciso sobre la composici\u00f3n y los efectos visuales.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image-layers\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> during Docker <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> distribution.<\/p>\n<h3>2. Limit Access to the Build Environment<\/h3>\n<p>Restrict access to the build environment to trusted personnel only. By limiting access, you reduce the risk of malicious users exploiting the build process to gain access to sensitive data.<\/p>\n<h3>3. Supervisar registros de compilaci\u00f3n<\/h3>\n<p>Revisa peri\u00f3dicamente los registros de compilaci\u00f3n en busca de actividades sospechosas o intentos de acceso no autorizados. La supervisi\u00f3n ayuda a identificar posibles violaciones de seguridad de manera temprana.<\/p>\n<h3>4. Utiliza construcciones de m\u00faltiples etapas<\/h3>\n<p>Consider using multi-stage builds to keep your images lightweight and secure. By copying only the necessary artifacts from one stage to another, you can prevent extra files, including SSH keys, from being included in the final <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>.<\/p>\n<pre><code class=\"language-dockerfile\"># syntax=docker\/dockerfile:1.2\n\nFROM alpine:latest AS builder\n\n# Clone the <span class=\"glossaryai-tooltip glossary-term-659\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\" target=\"_blank\">repositorio<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un repositorio es una ubicaci\u00f3n centralizada donde se almacenan, gestionan y mantienen datos, c\u00f3digo o documentos. Facilita el control de versiones, la colaboraci\u00f3n y el intercambio eficiente de recursos entre los usuarios.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\">More \u00bb<\/a><\/span><\/span><span class=\"gai-tooltip-video-wrapper\"><span class=\"gai-tooltip-video\" data-src=\"https:\/\/www.youtube.com\/embed\/_OXj8BGxNPY?rel=0&#038;modestbranding=1\"><\/span><\/span><\/span><\/span><\/span> using SSH\n<span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\" target=\"_blank\">CORRE<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --mount=type=ssh git clone git@github.com:your-private-repo.git\n\nFROM alpine:latest\n\n# <span class=\"glossaryai-tooltip glossary-term-673\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/copy\/\" target=\"_blank\">Copiar<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">COPY is a command in computer programming and data management that facilitates the duplication of files or data from one location to another, ensuring data integrity and accessibility.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/copy\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> only necessary files from the builder stage\n<span class=\"glossaryai-tooltip glossary-term-673\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/copy\/\" target=\"_blank\">COPIA<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">COPY is a command in computer programming and data management that facilitates the duplication of files or data from one location to another, ensuring data integrity and accessibility.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/copy\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --from=builder \/path\/to\/artifact \/app\/<\/code><\/pre>\n<h2>Troubleshooting Common Issues<\/h2>\n<p>While using the <code>--ssh<\/code> La opci\u00f3n puede agilizar su proceso de construcci\u00f3n, es posible que se encuentre con algunos desaf\u00edos. Aqu\u00ed hay algunos problemas comunes y posibles soluciones:<\/p>\n<h3>Agente SSH no est\u00e1 en ejecuci\u00f3n<\/h3>\n<p>If you receive an error indicating that the SSH agent is not running, start the SSH agent and <span class=\"glossaryai-tooltip glossary-term-674\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/add\/\" target=\"_blank\">a\u00f1adir<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">La instrucci\u00f3n ADD en Docker es un comando utilizado en Dockerfiles para copiar archivos y directorios desde una m\u00e1quina anfitriona hacia una imagen de Docker durante el proceso de construcci\u00f3n. No solo facilita la transferencia de archivos locales, sino que tambi\u00e9n proporciona funcionalidades adicionales, como extraer autom\u00e1ticamente archivos comprimidos y obtener archivos remotos a trav\u00e9s de HTTP o HTTPS.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/add\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> your keys:<\/p>\n<pre><code class=\"language-bash\">eval \"$(ssh-agent -s)\"\nssh-add ~\/.ssh\/id_rsa<\/code><\/pre>\n<h3>2. Errores de permiso denegado<\/h3>\n<p>If you encounter permission denied errors when attempting to clone a <span class=\"glossaryai-tooltip glossary-term-659\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\" target=\"_blank\">repositorio<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un repositorio es una ubicaci\u00f3n centralizada donde se almacenan, gestionan y mantienen datos, c\u00f3digo o documentos. Facilita el control de versiones, la colaboraci\u00f3n y el intercambio eficiente de recursos entre los usuarios.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\">More \u00bb<\/a><\/span><\/span><span class=\"gai-tooltip-video-wrapper\"><span class=\"gai-tooltip-video\" data-src=\"https:\/\/www.youtube.com\/embed\/_OXj8BGxNPY?rel=0&#038;modestbranding=1\"><\/span><\/span><\/span><\/span><\/span>, ensure that your SSH keys have the correct permissions:<\/p>\n<pre><code class=\"language-bash\">chmod 600 ~\/.ssh\/id_rsa<\/code><\/pre>\n<h3>3. Build Fails with SSH Connection Issues<\/h3>\n<p>Si la compilaci\u00f3n falla debido a problemas de conexi\u00f3n SSH, aseg\u00farate de que tu firewall o... <span class=\"glossaryai-tooltip glossary-term-661\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/network\/\" target=\"_blank\">red<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Una red, en inform\u00e1tica, es un conjunto de dispositivos interconectados que se comunican y comparten recursos. Permite el intercambio de datos, facilita la colaboraci\u00f3n y mejora la eficiencia operativa.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/network\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> settings allow outgoing SSH connections. Additionally, verify that the SSH key being used has access to the <span class=\"glossaryai-tooltip glossary-term-659\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\" target=\"_blank\">repositorio<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un repositorio es una ubicaci\u00f3n centralizada donde se almacenan, gestionan y mantienen datos, c\u00f3digo o documentos. Facilita el control de versiones, la colaboraci\u00f3n y el intercambio eficiente de recursos entre los usuarios.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/repository\/\">More \u00bb<\/a><\/span><\/span><span class=\"gai-tooltip-video-wrapper\"><span class=\"gai-tooltip-video\" data-src=\"https:\/\/www.youtube.com\/embed\/_OXj8BGxNPY?rel=0&#038;modestbranding=1\"><\/span><\/span><\/span><\/span><\/span>.<\/p>\n<h2>Conclusi\u00f3n<\/h2>\n<p>El <code>--ssh<\/code> option in Docker BuildKit has revolutionized the way developers handle sensitive data during the <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> build process. By enabling secure access to private repositories and APIs without exposing SSH keys, this feature enhances both security and efficiency. By following best practices and remaining vigilant about security implications, developers can leverage the power of Docker to streamline their workflows while keeping their credentials safe. As the demand for containerized applications continues to grow, mastering the <code>--ssh<\/code> Esta opci\u00f3n ser\u00e1 una habilidad crucial para cualquier ingeniero DevOps o desarrollador que trabaje con Docker.<\/p>","protected":false},"excerpt":{"rendered":"<p>The `\u2013ssh` flag in <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un Dockerfile es un script que contiene una serie de instrucciones para automatizar la creaci\u00f3n de im\u00e1genes Docker. Especifica la imagen base, las dependencias de la aplicaci\u00f3n y la configuraci\u00f3n, facilitando el despliegue consistente en diferentes entornos.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> permite el acceso seguro a las claves SSH durante el proceso de compilaci\u00f3n. Esta funci\u00f3n mejora la seguridad al evitar la exposici\u00f3n de claves privadas en el producto final. <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\" target=\"_blank\">imagen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">An image is a visual representation of an object or scene, typically composed of pixels in digital formats. It can convey information, evoke emotions, and facilitate communication across various media.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/es\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>.<\/p>","protected":false},"author":1,"featured_media":2037,"parent":0,"template":"","glossary-cat":[],"class_list":["post-1362","glossary","type-glossary","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dockerfile -ssh - Dockerpros<\/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:\/\/dockerpros.com\/es\/wiki\/dockerfile-sshpara-crear-una-imagen-de-docker-con-ssh-habilitado-puedes-seguir-estos-pasos1-crea-un-archivo-dockerfile-con-el-siguiente-contenidodockerfilefrom-ubuntulatestrun-apt-get\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dockerfile -ssh - Dockerpros\" \/>\n<meta property=\"og:description\" content=\"The `--ssh` flag in Dockerfile allows secure access to SSH keys during the build process. This feature enhances security by preventing the exposure of private keys in the final image.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dockerpros.com\/es\/wiki\/dockerfile-sshpara-crear-una-imagen-de-docker-con-ssh-habilitado-puedes-seguir-estos-pasos1-crea-un-archivo-dockerfile-con-el-siguiente-contenidodockerfilefrom-ubuntulatestrun-apt-get\/\" \/>\n<meta property=\"og:site_name\" content=\"Dockerpros\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/\",\"url\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/\",\"name\":\"Dockerfile -ssh - Dockerpros\",\"isPartOf\":{\"@id\":\"https:\/\/dockerpros.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg\",\"datePublished\":\"2024-07-23T12:38:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#primaryimage\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg\",\"width\":800,\"height\":600,\"caption\":\"dockerfile-ssh-2\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dockerpros.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Glossary\",\"item\":\"https:\/\/dockerpros.com\/fr\/wiki\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Dockerfile &#8211;ssh\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dockerpros.com\/#website\",\"url\":\"https:\/\/dockerpros.com\/\",\"name\":\"Dockerpros\",\"description\":\"DockerPros \u2013 Your Ultimate Docker Resource Hub\",\"publisher\":{\"@id\":\"https:\/\/dockerpros.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dockerpros.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dockerpros.com\/#organization\",\"name\":\"Dockerpros\",\"url\":\"https:\/\/dockerpros.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"width\":532,\"height\":114,\"caption\":\"Dockerpros\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dockerfile -ssh - Dockerpros","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:\/\/dockerpros.com\/es\/wiki\/dockerfile-sshpara-crear-una-imagen-de-docker-con-ssh-habilitado-puedes-seguir-estos-pasos1-crea-un-archivo-dockerfile-con-el-siguiente-contenidodockerfilefrom-ubuntulatestrun-apt-get\/","og_locale":"es_ES","og_type":"article","og_title":"Dockerfile -ssh - Dockerpros","og_description":"The `--ssh` flag in Dockerfile allows secure access to SSH keys during the build process. This feature enhances security by preventing the exposure of private keys in the final image.","og_url":"https:\/\/dockerpros.com\/es\/wiki\/dockerfile-sshpara-crear-una-imagen-de-docker-con-ssh-habilitado-puedes-seguir-estos-pasos1-crea-un-archivo-dockerfile-con-el-siguiente-contenidodockerfilefrom-ubuntulatestrun-apt-get\/","og_site_name":"Dockerpros","og_image":[{"width":800,"height":600,"url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/","url":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/","name":"Dockerfile -ssh - Dockerpros","isPartOf":{"@id":"https:\/\/dockerpros.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#primaryimage"},"image":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#primaryimage"},"thumbnailUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg","datePublished":"2024-07-23T12:38:34+00:00","breadcrumb":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#primaryimage","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-ssh_1362.jpg","width":800,"height":600,"caption":"dockerfile-ssh-2"},{"@type":"BreadcrumbList","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-ssh\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dockerpros.com\/"},{"@type":"ListItem","position":2,"name":"Glossary","item":"https:\/\/dockerpros.com\/fr\/wiki\/"},{"@type":"ListItem","position":3,"name":"Dockerfile &#8211;ssh"}]},{"@type":"WebSite","@id":"https:\/\/dockerpros.com\/#website","url":"https:\/\/dockerpros.com\/","name":"Profesionales de Docker","description":"DockerPros \u2013 Tu centro definitivo de recursos Docker","publisher":{"@id":"https:\/\/dockerpros.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dockerpros.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/dockerpros.com\/#organization","name":"Profesionales de Docker","url":"https:\/\/dockerpros.com\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","width":532,"height":114,"caption":"Dockerpros"},"image":{"@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/glossary\/1362","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/types\/glossary"}],"author":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":0,"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/glossary\/1362\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/media\/2037"}],"wp:attachment":[{"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/media?parent=1362"}],"wp:term":[{"taxonomy":"glossary-cat","embeddable":true,"href":"https:\/\/dockerpros.com\/es\/wp-json\/wp\/v2\/glossary-cat?post=1362"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}