docker 挂载目录挂载不上**

最近做项目做一个shared Dynamodb, 使用docker挂载一个image,发现怎么都挂载不上,

使用

$ pwd
E:\Work\Aws\git\schema\dynamodb\local

$ ls
init.sh  README.md  shared-local-instance.db


$ cat README.md
docker run -v "$PWD":/dynamodb_local_db -p 8000:8000 cnadiminti/dynamodb-local:l
atest
$
docker run -v "$PWD":/dynamodb_local_db -p 8000:8000 cnadiminti/dynamodb-local:latest

 结果发现挂载不上:


$ docker ps
CONTAINER ID        IMAGE                              COMMAND
CREATED             STATUS              PORTS                    NAMES
08f63c3ff31a        cnadiminti/dynamodb-local:latest   "/docker-entrypoint."   7
 minutes ago       Up 7 minutes        0.0.0.0:8000->8000/tcp   affectionate_par
e


$ docker exec -it cd2bb8d20608 /bin/bash


$ docker exec -it 08f63c3ff31a  /bin/bash
root@08f63c3ff31a:/var/dynamodb_local# ls
DynamoDBLocal.jar  LICENSE.txt  third_party_licenses
DynamoDBLocal_lib  README.txt
root@08f63c3ff31a:/var/dynamodb_local# cd /
root@08f63c3ff31a:/# ls
bin   docker-entrypoint.sh  etc   lib64  opt   run   sys  var
boot  docker-java-home      home  media  proc  sbin  tmp
dev   dynamodb_local_db     lib   mnt    root  srv   usr

root@08f63c3ff31a:/# cd  dynamodb_local_db
root@08f63c3ff31a:/dynamodb_local_db# ls  
(注: 发现没有挂载成功,因为该目录里边没有文件)

做过如下尝试:

停掉container, 重新挂载,不行

停掉container,rm contaniner, 重新挂载,不行

关掉docker 终端,重新挂载,不行

删掉image重新挂载,还是不行

 

后来发现我需要挂载的本机目录是E:\Work\Aws\git\schema\dynamodb\local,但是docker运行的VM里边setting中Shared Folder中只有c/Users

解决办法:把需要挂载的文件放到c:/users 目录下可以了

 

*TODO: docker 原理, image ,machine的关系,docker 命令

 

 

 

docker run -v "$PWD":/dynamodb_local_db -p 8000:8000 cnadiminti/dynamodb-local:l
atest
posted on 2018-06-14 15:21  yanzibuaa  阅读(5491)  评论(2编辑  收藏  举报