自然求助万能的 Google 希望能够有 volume clone 的神奇命令搞定,然而目前 docker volume 支持的指令只有
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ docker volume
Usage: docker volume COMMAND
Manage volumes
Options:
Commands:
create Create a volume
inspect Display detailed information on one or more volumes
ls List volumes
prune Remove all unused local volumes
rm Remove one or more volumes
Run 'docker volume COMMAND --help'for more information on a command.
$ docker run -it -v scsweb_pgdata:/volume -v ./db:/backup alpine \
> sh -c "rm -rf /volume/* /volume/..?* /volume/.[!.]* ; tar -C /volume/ -xjf /backup/pgdata.tar.bz2"C:\Program Files\Docker Toolbox\docker.exe: Error response from daemon: create .\db;C: ".\\db;C" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intended to pass a host directory, use absolute path.
See 'C:\Program Files\Docker Toolbox\docker.exe run --help'.
同样的命令在 Linux 系统是没有任何问题的,为了短平快解决问题,我并没有过于深究这个原因,而是曲线救国的方案,利用 docker-compose 来搞