Estoy ejecutando docker 1.6 y boot2docker
en un cuadro de Windows 8.1. Cuando uso el acceso directo Boot2Docker Start, me lleva a un indicador de basurero cygwin donde puedo ejecutar los comandos de Docker de forma nativa.
Tengo problemas para montar un directorio desde mi carpeta de usuarios. He intentado:
$ docker run -d --name abe -v $APPDATA/Bitcoin:/datadir poliver/bitcoin-abe
Me sale el error:
invalid value "C:\\Users\\someone\\AppData\\Roaming/Bitcoin:/datadir"
for flag -v: \Users\someone\AppData\Roaming/Bitcoin:/datadir
is not an absolute path
See 'c:\Program Files\Boot2DockeForWindows\docker.exe run --help'.
Obtengo los mismos resultados cuando lo llamo de esta manera:
$ docker run -d --name abe -v "$APPDATA/Bitcoin":/datadir poliver/bitcoin-abe
$ docker run -d --name abe -v "/c/users/someone/AppData/Roaming/Bitcoin":/datadir poliver/bitcoin-abe
$ docker run -d --name abe -v ~/AppData/Roaming/Bitcoin:/datadir poliver/bitcoin-abe
También he intentado:
$ docker run -d --name abe -v ~/APPDATA/Bitcoin:/datadir poliver/bitcoin-abe
Y recibí el error:
FATA[0000] Error response from daemon: cannot bind mount volume: ~\AppData\Bitcoin volume paths must be absolute.
Parece que cygwin bash se está reemplazando /
por \
y luego Docker analiza el argumento pasado -v
y no puede aceptarlo.
/c/Users
desde el boot2docker linux VM (el host). Pero necesito el contenedor poliver / bitcoin-abe para montar una carpeta específica desde/c/Users
el/datadir
punto de montaje en el contenedor.$ docker run -d -v /c/Users/310145787/Desktop/mongo:/data/db mongo invalid value "c:\\Users\\310145787\\Desktop\\mongo;C:\\Program Files (x86)\\Git\\data\\db" for flag -v: \Users\310145787\Desktop\mongo;C:\Program Files (x86)\Git\data\db is not an absolute path
Respuestas:
Si desea montar el
$APPDATA
en su máquina host de Windows/datadir
en el contenedor acoplable, en lugar del siguiente comando:Puedes emitir:
//c/Users/PATH_TO_DIR
es la clave aquí para el directorio de WindowsSu
$APPDATA
directorio DEBE residir en el/c/Users/Your_User_Name
directorio y no puede residir en otros lugares. (por ejemplo,D:/$APPDATA
en la partición D).fuente
ver: https://github.com/docker/docker/issues/12590
fuente