我正在尝试让容器登录到主机上的目录
/var/log/app
,但不幸的是,在容器中进行的更改没有被保留,例如:
1 - 启动一个容器
sudo docker run -v /var/log/app --entrypoint bash -t -i b18bf31c48d5
2 - 打印一些文件
echo "foo" > /varlog/app/foo.txt
3 - 退出容器
4 - 前往检查/var/log/app
是否存在foo.txt
但是它并不在那里。
有什么想法为什么会发生这种情况吗?
-v
标志的问题;它只是映射了您的Docker卷。您不能仅向-v
标志传递路径,如果您想在容器外查看这些日志文件,则还必须将该路径映射到主机上的位置。左侧的路径是容器内的目录,冒号右侧的路径是主机上的路径。 - Developer Dave