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

0

248
Views
El volumen no se comparte entre los nodos de Docker Swarm

Tengo problemas para compartir una carpeta entre contenedores Docker que se ejecutan en diferentes nodos de Docker Swarm. Mi enjambre consta de un gerente y dos trabajadores.

Estoy usando este archivo de redacción para implementar aplicaciones:

 version: '3' services: redis: image: redis:latest networks: - default ports: - 6379:6379 volumes: - test-volume:/test deploy: replicas: 1 update_config: parallelism: 2 delay: 10s restart_policy: condition: on-failure placement: constraints: [node.role == manager] logstash: image: docker.elastic.co/logstash/logstash:5.2.2 networks: - default volumes: - test-volume:/test deploy: placement: constraints: [node.role == worker] networks: default: external: false volumes: test-volume:

Puedo confirmar que la carpeta se montó con éxito en ambos contenedores con el uso de docker exec _id_ ls /test . Pero cuando agrego un archivo a esta carpeta con docker exec _id_ touch /test/file segundo contenedor no ve el archivo creado.

¿Cómo configurar el enjambre para que los archivos sean visibles en ambos contenedores?

over 3 years ago · Santiago Trujillo
1 answers
Answer question

0

Los volúmenes creados en Docker Swarm a través del controlador predeterminado son locales para el nodo. Entonces, si coloca ambos contenedores en el mismo host, tendrán un volumen compartido. Pero cuando coloca sus contenedores en diferentes nodos, se creará un volumen separado en cada nodo.

Ahora, para lograr montajes/volúmenes enlazados en múltiples nodos, tiene estas opciones:

  1. Use un sistema de archivos de clúster como glusterfs, ceph y ... en nodos de enjambre, luego use montajes de enlace en su definición de servicio apuntando a fs compartidos.

  2. Utilice uno de los muchos controladores de almacenamiento disponibles para docker que proporcionan almacenamiento compartido como flocker,...

  3. Cámbiese a Kubernetes y aproveche el aprovisionamiento de volumen automatizado utilizando múltiples backends a través de clases y reclamaciones de almacenamiento.

ACTUALIZACIÓN: Como señaló @Krishna en los comentarios, Flocker se cerró y no hay mucha actividad en el repositorio de github .

over 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