Docker 在构建过程中不会创建目录



首次使用Docker实验。在我的dockerfile中有这些步骤以创建一个目录,但是当我运行容器时,目录不存在。

FROM ubuntu
MAINTAINER AfterWorkGuinness
RUN apt-get update
RUN apt-get install -y openssh-server
RUN mkdir /root/.ssh
RUN cd /root/.ssh
RUN ssh-keygen -t rsa -N "" -f id_rsa
VOLUME /root
EXPOSE 22

构建图像:

docker build -t ubuntu-ssh --no-cache .

在我运行容器时测试目录:

docker run -it -v c:/users/awg/dev/tmp/home:/root ubuntu-ssh
root@39eec8fa51ad:/# cd ~/.ssh
bash: cd: /root/.ssh: No such file or directory
root@39eec8fa51ad:/# cd /root/.ssh
bash: cd: /root/.ssh: No such file or directory

使用命名卷代替绑定卷,

docker run -v tmphome:/root whatever

在命名的卷中,文件仍将持续到容器重新启动上,但目录中的内容将在创建时复制到已安装的卷中。Docker根据使用的驱动程序选择在哪里存储数据。local是Docker Data DIR中volume目录的默认值和数据默认值,通常是/var/lib/docker/volumes

最新更新