针对这个问题,分两步解决:
1.k8s指定节点部署,目的是为了让docker容器始终部署在一台宿主机上。
后面我挂载目录的话,只要挂载到这台宿主机上就可以了。
2.在yaml文件中配置挂载目录。
一开始我想的是在Dockerfile文件中配置,后来改了思路,认为在yaml文件中比较合理。至于Dockerfile中行不行,我没做测试。
我的这个思路可能不专业,但解决了我的问题。不喜勿喷哈。下面我贴出来yaml文件:
解说:
1.指定nodeName,就可以实现docker始终部署在一台宿主机上。nodeName可以是宿主机的IP,也可以是宿主机的节点名称
2.配置volumeMounts,指定docker容器需要挂载的目录和别名。/app/App_Data为docker容器中的目录
3.配置volumes,指定在宿主机上挂载的目录,并指定name为volumeMounts中设置的name。/soft/logs为宿主机中的目录
参考网址:https://blog.csdn.net/zhangge3663/article/details/107838613。这篇文章还讲了另外一种方式:网络文件系统nfs,可以看下。
Original: https://www.cnblogs.com/subendong/p/16469966.html
Author: 屌丝大叔的笔记
Title: 使用k8s部署docker,如何挂载目录?
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/534839/
转载文章受原作者版权保护。转载请注明原作者出处!