• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

554
Views
Docker Run: el volumen montado no muestra cambios en los archivos

Estoy luchando con la ejecución de los últimos cambios. A continuación se muestran los detalles.

Dockerfile

 FROM python:3.7.3 RUN mkdir -p /usr/apps COPY test.py /usr/apps RUN pip install mindsdb CMD [ "python","test.py" ]

Construir

 docker build -t py37:custom .

Correr

 docker run -it -v /Development/PetProjects/mindsdb:/usr/apps/ py37:custom

Pero solo muestra los cambios en el momento de la compilación.

about 3 years ago · Santiago Trujillo
1 answers
Answer question

0

En primer lugar, al iniciar su contenedor, no está utilizando volúmenes sino bind mounts . Por lo tanto, monta el directorio /Development/PetProjects/mindsdb en su máquina host en el directorio /usr/apps/ . Cada cambio realizado en los archivos de su máquina host en este directorio será visible en el contenedor y viceversa.

Si quisiera usar volúmenes, podría crear uno usando el comando docker volume create y luego ejecutar el contenedor con este volumen: docker container run -v volume_name:path_in_container image_name . Luego, podría detener el contenedor y ejecutarlo nuevamente al pasar este volumen para ejecutar el comando y los cambios en el directorio path_in_container podrían almacenarse en las creaciones de contenedores.

Otra cosa es que está intentando montar /usr/apps/ en su contenedor y copió un script de python allí usando Dockerfile. Tenga en cuenta que en su ventana docker run el contenido del comando de /Development/PetProjects/mindsdb reemplazará el contenido de /usr/apps/ en su contenedor y si no tiene su secuencia de comandos en /Development/PetProjects/mindsdb , la secuencia de comandos no será visible en El contenedor.

Además, su CMD parece no funcionar debido a la relación de la ruta. Debe cambiar su CMD a CMD [ "python","/usr/apps/test.py" ] o usar la opción WORKDIR - WORKDIR /usr/apps/ para que su comando python pueda ejecutarse desde este directorio y el script pueda verse allí .

Puede encontrar más información sobre las diferencias entre los volúmenes y los montajes de enlace en la documentación de Docker .

about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error