我正在尝试将一堆docker-compose文件翻译成kubernetes yamls . 我已经使用了kompose,这让我分道扬but,但是我被卡在多个容器的一个特定部分上 .
这是其中一个容器 . 请注意,docker容器正在 /u/data/. . .
到 /var/lib/mysql
. 这实际上是必要的,因为mysql目录包含数据库和配置 .
server1-backend-mysql:
image: mysql
container_name: server-backend-mysql
restart: always
volumes:
- /u/data/server-backend-mysql:/var/lib/mysql
networks:
- eolnet
在Kubernetes实现这一目标的正确方法是什么?请注意,对于k8,我将安装一个nfs卷(这仅用于测试目的) .
我确实调查了hostpath,但到目前为止还没有运气 .
1 回答
声明Pod时,请在
spec.volumes
处指定音量,然后在spec.containers[*].volumeMounts
处指定音量:声明
Deployment
或StatefulSet
(您应该执行而不是声明Pod)时,将相应的配置移动到spec.template.spec.volumes
和spec.template.spec.containers[*].volumeMounts
. 有关更多信息,请查看documentation .作为与您的问题无关的旁注:如果您计划从NFS卷运行MySQL,请记住可以从NFS运行MySQL,但是not something that MySQL is really optimized for . 请务必相应地配置MySQL服务器,并检查您的环境是否允许您使用网络块设备(而不是网络文件系统),如Ceph RBD卷或类似设备 .