我在AWS Linux实例
上执行此操作Client:
Version: 1.9.1
API version: 1.21
Go version: go1.4.2
Git commit: a34a1d5/1.9.1
Built:
OS/Arch: linux/amd64
Server:
Version: 1.9.1
API version: 1.21
Go version: go1.4.2
Git commit: a34a1d5/1.9.1
Built:
OS/Arch: linux/amd64
每当我尝试使用以下docker-compose.yml docker-compose up -d
时(这是一段摘录)
elasticsearch:
image: elasticsearch:2.1.1
command: elasticsearch
ports:
- "9200:9200"
- "9300:9300"
volumes:
- ./elk/es/staging.yml:/etc/elasticsearch/elasticsearch.yml
links:
- kibana
volumes_from:
- es-data
es-data:
image: elasticsearch:2.1.1
command: "true"
volumes:
- /usr/share/elasticsearch/
- /etc/default/elasticsearch
- /var/lib/elasticsearch/
- /var/log/elasticsearch
我会收到此错误:
Recreating es-data_1
ERROR: cannot mount volume over existing file, file exists /var/lib/docker/devicemapper/mnt/33111596cd765c4220c65ea7cc35df4a6c295a860e4ad94294c7ee985da6ea7c/rootfs/etc/default/elasticsearch
我尝试通过从es-data中删除卷来绕过此错误,但这并不理想,因为我将其用作仅数据容器。
我已尝试使用docker volume rm $(docker volume ls -q)
删除系统上的所有可用卷,但除了一个我不确定如何强制删除的卷之外,它会删除所有卷。
理想的情况是允许我重复使用该卷(我假设此时是孤立的)。第二种理想情况是能够移除音量并能够创建一个新音量。
如果我在我的个人计算机上执行此操作,我会采用更简单的方法重新创建我正在使用的docker-machine作为一个干净的平板,但我不想在我的AWS实例上执行此操作。< / p>