【问题标题】:kubernetes: how to write pod yaml file for mapping volumn from host to containerkubernetes:如何编写 pod yaml 文件以将卷从主机映射到容器
【发布时间】:2018-11-28 13:08:44
【问题描述】:

我有一个运行 docker 的命令,

docker run --name pre-core -itdp 8086:80 -v /opt/docker/datalook-pre-core:/usr/application app

在上面的命令中,/opt/docker/datalook-pre-core 是主机目录,/usr/application 是容器目录。目的是容器目录映射到主机目录。因此,当容器崩溃时,该目录将用作存储并保存其上的数据。

当我打算使用kubernetes为这个容器创建一个pod时,如何编写pod.yaml文件?

我猜是这样的:

apiVersion: v1
kind: Pod
metadata:
  name: app-ykt
  labels:
    app: app-ykt
    purpose: ykt_production
spec:
  containers:
  - name: app-ykt
    image: app
    imagePullPolicy: IfNotPresent
    ports:
      - containerPort: 80
    volumnMounts:
      - name: volumn-app-ykt
        mountPath: /usr/application
  volumns:
      - name: volumn-app-ykt
      ????

我不知道在我的案例中我要写的 yaml 中的确切属性是什么?

【问题讨论】:

    标签: docker kubernetes


    【解决方案1】:

    这将是一个hostPath 卷:https://kubernetes.io/docs/concepts/storage/volumes/

      volumes:
      - name: volumn-app-ykt
        hostPath:
          # directory location on host
          path: /opt/docker/datalook-pre-core
          # this field is optional
          type: Directory
    

    但是请记住,虽然容器崩溃不会移动任何东西,但其他事件可能会导致 pod 移动到不同的主机,因此您需要准备好处理冷缓存和清理孤立缓存。

    【讨论】:

      猜你喜欢
      • 2022-08-17
      • 1970-01-01
      • 2014-11-20
      • 1970-01-01
      • 2018-01-11
      • 2015-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多