如何解决如何将应用程序映射到Docker卷
我是Docker的新手,我一直在尝试运行一个容器,该容器将我的Java Web应用程序部署在tomcat映像上。问题是我的应用程序必须读写它可以在我的机器上访问的文件,并且很明显,当应用程序的.war文件作为docker容器部署在tomcat上作为docker容器时,它无法找到该文件,因为该文件不再被识别。我试图查看如何解决该问题,并遇到了Docker卷。我的想法是将文件存储在一个卷中,然后让我的应用程序从该卷中检索数据,但是我找不到解决方法。我一直在寻找一种方法来查看如何修改应用程序中的路径以指向Docker卷中的文件,但找不到任何东西。在尝试了解有关Docker卷的更多信息时,我可能错过了一些东西?请指出执行此操作的正确方法,或者提供一个有用的链接,以显示可以如何执行类似操作;或者,如果我完全不赞成此方法,请告诉我。
解决方法
这是有关卷和挂载的官方文档 https://docs.docker.com/storage/volumes/
这是一个有关如何将mysql容器安装到驱动器的示例,即使删除了该容器,这也是保留数据的一个好主意。 看一下“存储数据的位置”
https://hub.docker.com/_/mysql/
对于docker而言,这是一个非常简短的版本,用于将容器内的文件夹安装到外部文件夹
volumes:
- /var/mysql:/var/lib/mysql
*这只是完整的docker-compose文件中的两行,但应演示如何安装数据。
“:”左侧的文件夹是驱动器上数据所在的文件夹 “:”左侧的文件夹,它指向容器内的文件夹。
在文件夹“ ./datafolder”中查找文件时 您应该将文件夹./装入容器中,将其安装到驱动器上包含“数据文件夹”的文件夹中
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。