已装入的主机文件成为docker容器内的目录

时间:2015-11-06 12:12:53

标签: docker containers mount

我将主机文件挂载到docker容器中,挂载的文件成为容器内的目录。这就是我如何运行它:

$ docker run --name <containername> -it -d -v /home/core/account_config.py:/code/account_config.py  <imagename>

在容器内:

    # ls -la
    -rw-r--r--. 4 root root     0 Nov  6 10:25 __init__.py
    drwxr-xr-x. 2 root root  4096 Nov  6 10:59 account_config.py
    ....

文件(在主机文件系统中)仍然是一个非常好的python文件。

源代码在构建期间添加到/code。我的Dockerfile中的相应行是:

ADD ./code /code

我希望能够在不重建映像的情况下更改配置文件的内容,所以我想稍后再安装它。 出了什么问题,我该如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

当(几乎)每个奇怪的问题发生时,结果证明这个问题有一个非常简单的解决方案。

主机文件的路径包含拼写错误,因此docker会自动在此路径中创建一个目录,并将其安装到容器中。

答案 1 :(得分:0)

如果您希望能够修改主机上的文件并让更改反映在容器中,则应在-v HOST_PATH:CONTAINER_PATH容器时通过run安装卷。