【发布时间】:2018-05-15 10:51:14
【问题描述】:
我创建了自己的 Dockerfile,在构建过程中我插入到 /opt/wifly/log 我的 log4j.xml。 现在我需要创建卷 /mnt/data/logs/application:/opt/wildfly/log
我运行命令 sudo docker run --name=myapp -v /mnt/data/logs/application:/opt/wildfly/log -d -i -t application
但是当我查看 docker 容器时,文件夹 /opt/wifly/log 是空的。在这个文件夹中应该是 log4j.xml。
谢谢。
【问题讨论】:
-
至少您应该决定是要使用
/opt/wilfly/log(在您的问题中出现第 1 次和第 4 次)还是使用/opt/wildfly/log(第 2 次和第 3 次)。然后登录到容器docker exec -it {containerId} sh,在你想要的目录下创建一个文件,并检查你是否可以在主机上看到它。如果是,则您的应用程序根本没有创建日志,如果不是,您可能是在错误的位置安装/查找。 -
看到答案后,我敢建议您不要将日志配置从主机挂载到容器。它应该被部署为容器的一个组成部分。您应该挂载的是日志输出的目录,以便在容器停止后保留它们。
标签: docker dockerfile docker-volume