Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

347
Vistas
¿Cómo copiar el contenido de la carpeta a/aplicación a través de dockerfile?

Tenemos una carpeta para toda la solución que contiene configuraciones compartidas que necesita cada proyecto.

Estoy tratando de copiar el contenido de esa carpeta a la carpeta /app pero no funciona

Esto es parte de la configuración de mi dockerfile:

 FROM mcr.microsoft.com/dotnet/core/sdk:3.1-alpine3.12 AS build ### this is where I'm trying to copy the contents of Shared Settings to /app WORKDIR '/src/Shared Settings' COPY '/src/Shared Settings' /app ### this is part of the rest of the docker file, which works fine WORKDIR /src COPY . . WORKDIR /src/OurProject.Server RUN dotnet restore OurProject.Server.csproj RUN dotnet build OurProject.Server.csproj -c Release -o /app

¿Qué debo cambiar para que el contenido de la configuración compartida se copie en la carpeta /app en mi contenedor docker?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

La documentación de Dockerfile para la directiva COPY señala que tiene dos formas, una forma separada por espacios y una forma de matriz JSON, y señala

Este último formulario [matriz JSON] es necesario para las rutas que contienen espacios en blanco.

Entonces, aplicando eso a su ruta específica, obtendría

 COPY ["src/Shared Settings", "/app"]

Esto es ampliamente cierto en un Dockerfile en general: la única cita en la sintaxis nativa de Dockerfile es escribir cosas en una matriz JSON. No se documenta que envolver un WORKDIR o COPY entre comillas simples tenga un efecto. Un RUN o CMD en forma de cadena es una aparente excepción a esto, pero solo porque estos comandos se ejecutan a través de un shell y allí se aplican las reglas de cotización del shell.

over 4 years ago · Santiago Trujillo Denunciar

0

El comando COPY '/src/Shared Settings' /app fallaría porque está diseñado para copiar desde el contexto de compilación (carpeta que contiene su Dockerfile). Sin embargo, la ruta '/src/Shared Settings' sugiere que está construyendo desde el directorio raíz de su host. Si ese directorio src no está en la raíz / , sino que existe dentro de una carpeta diferente (por ejemplo /path/to/your/folder_containing_src_and_Dockerfile/src ), debe cambiar la instrucción en su Dockerfile a:

 COPY 'src/Shared Settings' /app

Esto elimina el / principal que causa confusión en la ruta de su comando.

EDITAR: si está construyendo desde el directorio src, simplemente use las siguientes instrucciones en su Dockerfile:

 COPY 'Shared Settings' /app
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda