我在不同Docker Swarm节点上运行的容器之间共享文件夹存在问题。我的Swarm由一个管理者和两个工作节点组成。
我正在使用这个compose文件部署应用程序:
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:
我可以确认使用docker exec _id_ ls /test
成功地将文件夹挂载到两个容器中。但是当我使用docker exec _id_ touch /test/file
向此文件夹中添加文件时,第二个容器无法看到所创建的文件。
如何配置集群,使得两个容器都可以看到这些文件?