挂载的主机文件成为Docker容器内的目录

我将一个主机文件挂载到一个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文件。

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

 ADD ./code /code 

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

就像(几乎)每一个奇怪的问题发生的一样,事实certificate这个问题有一个非常简单的解决scheme。

宿主文件的path包含一个拼写错误,所以docker自动在这个path中创build一个目录,并将其挂载到容器中。

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