我正在尝试在 microk8s kubernetes 集群上启动一个 postgres pod。目前,包含所有数据的 postgres 容器在主机上本地启动。
问题是:是否可以将当前卷(从本地 docker 卷)映射到 kubernetes pod 部署?
我曾经将 Kubernetes 部署kompose
转换docker-compose.yml
为适当的.yaml
文件。
上述命令kompose
创建postgres-deployment.yaml
、postgres-service.yaml
和 2 persistantvolumeclaims
(从 docker-compose 中映射的卷中,一个用于 pg_data,另一个用于 init_db 脚本)。
我是否需要在自动生成的PersistantVolume
映射旁边生成映射以及它们的外观?PersistantVolumeClaims
kompose
编辑:使用下面的 yaml,我为 postgres 容器制作了 2volumes
和 2 volumeclaims
,为 init_db 脚本制作了数据 1。运行它然后公开服务端点是有效的。警告:因为数据库在 docker 主机容器和 kubernetes pod 上运行,同时发生数据损坏。
kind: PersistentVolume
apiVersion: v1
metadata:
name: postgres-pv-volume
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/var/lib/docker/volumes/dummy_pgdata/_data"