docker 卷的装载点名称
Mount point name for a docker volume
使用以下命令:
docker container run -dit --name testcontainer –mount source= ubervol, target=/vol alpine:latest
source 挂载点 name 是 ubervol
指向 target /vol
驻留在容器内,如下所示:
user@machine:~$ docker container exec -it b4fd sh
/ # pwd
/
/ # ls vol
vol
ubervol
位于主机 /var/lib/docker/volumes/ubervol
路径中的容器外部(托管 docker 守护进程)
使用以下 Dockerfile:
# Create the folders and volume mount points
RUN mkdir -p /var/log/jenkins
RUN chown -R jenkins:jenkins /var/log/jenkins
RUN mkdir -p /var/jenkins_home
RUN chown -R jenkins:jenkins /var/jenkins_home
VOLUME ["/var/log/jenkins", "/var/jenkins_home"]
我的理解是,target 位于路径为 /var/log/jenkins
的容器内
&& /var/jenkins_home
源挂载点名称是什么?对于每个目标(/var/log/jenkins
&& /var/jenkins_home
)
这个挂载点名称在主机中的路径是什么?
卷数据在主机上的位置是您不应尝试利用的实现细节。在某些环境中,例如 Docker 应用程序的 Docker 桌面,数据将隐藏在您无法直接访问的虚拟机中。虽然我很少遇到,但也有备用 volume drivers 可以让您将内容存储在其他地方。
每次你 docker run
一个基于声明 VOLUME
的图像的容器时,如果你不使用 -v
选项安装其他东西,Docker将创建一个匿名卷并为您安装它(就像您没有指定 --mount source=...
一样)。如果您从同一个图像启动多个容器,我相信每个容器都会得到一个新卷(如果有的话,具有不同的主机路径)。 Docker文件无法控制卷在主机上的位置;操作员可以挂载不同的命名卷或主机目录。
实际上,在 Docker 文件中使用 VOLUME
几乎没有意义。您可以使用 docker run -v
,无论此处是否为同一目录使用 VOLUME
。它的主要作用是 prevent future RUN
commands from modifying that directory.
使用以下命令:
docker container run -dit --name testcontainer –mount source= ubervol, target=/vol alpine:latest
source 挂载点 name 是 ubervol
指向 target /vol
驻留在容器内,如下所示:
user@machine:~$ docker container exec -it b4fd sh
/ # pwd
/
/ # ls vol
vol
ubervol
位于主机 /var/lib/docker/volumes/ubervol
路径中的容器外部(托管 docker 守护进程)
使用以下 Dockerfile:
# Create the folders and volume mount points
RUN mkdir -p /var/log/jenkins
RUN chown -R jenkins:jenkins /var/log/jenkins
RUN mkdir -p /var/jenkins_home
RUN chown -R jenkins:jenkins /var/jenkins_home
VOLUME ["/var/log/jenkins", "/var/jenkins_home"]
我的理解是,target 位于路径为 /var/log/jenkins
的容器内
&& /var/jenkins_home
源挂载点名称是什么?对于每个目标(/var/log/jenkins
&& /var/jenkins_home
)
这个挂载点名称在主机中的路径是什么?
卷数据在主机上的位置是您不应尝试利用的实现细节。在某些环境中,例如 Docker 应用程序的 Docker 桌面,数据将隐藏在您无法直接访问的虚拟机中。虽然我很少遇到,但也有备用 volume drivers 可以让您将内容存储在其他地方。
每次你 docker run
一个基于声明 VOLUME
的图像的容器时,如果你不使用 -v
选项安装其他东西,Docker将创建一个匿名卷并为您安装它(就像您没有指定 --mount source=...
一样)。如果您从同一个图像启动多个容器,我相信每个容器都会得到一个新卷(如果有的话,具有不同的主机路径)。 Docker文件无法控制卷在主机上的位置;操作员可以挂载不同的命名卷或主机目录。
实际上,在 Docker 文件中使用 VOLUME
几乎没有意义。您可以使用 docker run -v
,无论此处是否为同一目录使用 VOLUME
。它的主要作用是 prevent future RUN
commands from modifying that directory.