我有以下docker-compose文件
version: '2'
services:
postgres:
container_name: postgres
image: postgres:${POSTGRES_VERSION}
volumes:
- postgresdata:/var/lib/postgresql/data
ports:
- "5432:5432"
environment:
- POSTGRES_DB=42EXP
node:
container_name: node
build: .
links:
- postgres:postgres
ports:
- "8000:8000"
depends_on:
- postgres
command: npm start
volumes:
postgresdata:
正在运行docker volume ls
我有
local 42exp_postgresdata
尝试通过以下方式执行备份时:
docker run --rm --volume=42exp_postgresdata -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /var/lib/postgresql/data
我收到以下错误:
docker: Error response from daemon: Invalid volume spec "42exp_postgresdata": Invalid volume destination path: '42exp_postgresdata' mount path must be absolute..
我不确定我哪里出错了,因为它几乎是文档中指定的确切代码。如何正确指定要备份的命名卷?
答案 0 :(得分:0)
您是否尝试过使用--volumes-from mycompose_postgres_1
(或者调用生成的docker镜像)?请参阅:https://docs.docker.com/engine/tutorials/dockervolumes/