如何使用 Kubernetes 将主目录文件复制到新的持久卷中?
How to copy home directory file into new persistent volume with Kubernetes?
我有一个 JupyterHub Kubernetes 部署。
当我创建并附加一个持久卷 (PV) 时,它会清除我的映像中的主目录。它用一个空的主目录替换它,其中写入的任何内容都将按预期保留(这很好)。
如何将图像主文件夹中的文件放入 PV 主文件夹?
这是一个 example from the docs 不幸的是似乎只从新的 PV(而不是图像)复制:
singleuser:
lifecycleHooks:
postStart:
exec:
command: ["cp", "-a", "src", "target"]
这是我的单用户配置:
singleuser:
image:
name: myimage
tag: latest
pullPolicy: Always
storage:
capacity: 10Gi
dynamic:
storageClass: standard
以上应该没问题。
您可能正在将 PV 安装在您的主目录中,该目录与容器的主目录相同。您可以将 PV 挂载到不同的目录并执行复制,或者创建一个新映像,其中您的数据未存储在您的主目录中。这是如何使用 mountPath
:
的示例
apiVersion: v1
kind: Pod
metadata:
name: jypyterhuyb
namespace: default
spec:
volumes:
- name: myvol
...
containers:
- name: jypyter
image: "jypytercontainer"
volumeMounts:
- name: myvol
mountPath: /mnt/mypath
我有一个 JupyterHub Kubernetes 部署。
当我创建并附加一个持久卷 (PV) 时,它会清除我的映像中的主目录。它用一个空的主目录替换它,其中写入的任何内容都将按预期保留(这很好)。
如何将图像主文件夹中的文件放入 PV 主文件夹?
这是一个 example from the docs 不幸的是似乎只从新的 PV(而不是图像)复制:
singleuser:
lifecycleHooks:
postStart:
exec:
command: ["cp", "-a", "src", "target"]
这是我的单用户配置:
singleuser:
image:
name: myimage
tag: latest
pullPolicy: Always
storage:
capacity: 10Gi
dynamic:
storageClass: standard
以上应该没问题。
您可能正在将 PV 安装在您的主目录中,该目录与容器的主目录相同。您可以将 PV 挂载到不同的目录并执行复制,或者创建一个新映像,其中您的数据未存储在您的主目录中。这是如何使用 mountPath
:
apiVersion: v1
kind: Pod
metadata:
name: jypyterhuyb
namespace: default
spec:
volumes:
- name: myvol
...
containers:
- name: jypyter
image: "jypytercontainer"
volumeMounts:
- name: myvol
mountPath: /mnt/mypath