将cd放入docker创建的卷中
我是新来的码头工人。从Packt Publishing的《学习Docker 18.x的基本原理》一书中学习。在Docker Volume一章中,作者使用Docker machine创建了一个vm,然后创建了一个名为my data的卷。我已在第一个终端窗口中执行以下命令: 然后作者使用-v命令创建一个装载该卷的容器。我已在第二个终端窗口中执行以下命令: 当我尝试在第一个终端窗口中列出该卷中的文件时,我一无所获 所以我的理解是将cd放入docker创建的卷中,docker,Docker,我是新来的码头工人。从Packt Publishing的《学习Docker 18.x的基本原理》一书中学习。在Docker Volume一章中,作者使用Docker machine创建了一个vm,然后创建了一个名为my data的卷。我已在第一个终端窗口中执行以下命令: 然后作者使用-v命令创建一个装载该卷的容器。我已在第二个终端窗口中执行以下命令: 当我尝试在第一个终端窗口中列出该卷中的文件时,我一无所获 所以我的理解是 在docker中创建卷 将卷装入容器中 创建一些数据 退出容器。数据
提前感谢。您正在运行
docker machine
,它实际上在主机上创建了一个安装了docker守护程序的虚拟机。在其中运行docker volume create
时,它会在vm中创建卷。我怀疑您可能正在docker机器外部运行docker命令,但您已经在docker机器内创建了卷,这就是为什么它们看起来是不同的卷
理想情况下,您希望将主机配置为在执行任何docker命令时与docker机器对话。从:
$docker机器环境默认值
导出DOCKER\u TLS\u VERIFY=“1”
导出DOCKER_主机=”tcp://172.16.62.130:2376"
导出DOCKER\u CERT\u PATH=“/Users//.DOCKER/machine/machines/default”
导出DOCKER\u MACHINE\u NAME=“默认”
#运行此命令以配置shell:
#eval“$(docker机器环境默认值)”
否则,您对docker卷的理解是正确的。Docker卷由Docker创建和管理,这意味着它们在Docker主机中的物理位置可以更改。但卷中的数据将始终保持不变,直到您将其删除。根据报告:
创建卷时,它存储在Docker主机上的目录中。将卷装入容器时,此目录就是装入容器的目录
非常感谢。是的,我正在虚拟机内创建卷。但是在外面执行命令。
$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://172.16.62.130:2376"
export DOCKER_CERT_PATH="/Users/<yourusername>/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval "$(docker-machine env default)"