首次尝试使用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
答案 0 :(得分:2)
使用名为volume而不是bind mount,
docker run -v tmphome:/root whatever
在命名卷中,文件仍将在容器重新启动时保留,但目录will be copied to the mounted volume at creation time中的内容仍然存在。 Docker根据使用的驱动程序选择存储数据的位置。 local
是默认值,数据默认为Docker数据目录中的volume
目录,通常为/var/lib/docker/volumes