返回介绍

PART Ⅰ : 容器云OPENSHIFT

PART Ⅱ:容器云 KUBERNETES

PART Ⅲ:持续集成与持续部署

PART Ⅴ:日志/监控/告警

PART Ⅵ:基础

PART Ⅶ:数据存储、处理

PART VIII:CODE

PART X:HACKINTOSH

PART XI:安全

将Secret和ConfigMap以文件的形式挂载到容器

发布于 2024-06-08 21:16:47 字数 2820 浏览 0 评论 0 收藏 0

ConfigMap或者Secret在默认挂载到容器是以Volumes的形式,如果挂载路径下原有的其他文件,则会覆盖掉。 如果将挂载路径直接写成文件的绝对路径,这会在挂载路径下创建以文件名为名字的文件夹,文件会在这个文件夹下

containers:
  - image: 'busybox:latest'
    name: test
    volumeMounts:
      - mountPath: /etc/test/test.txt
        name: test-volume
volumes:
  - name: test-volume
    secret:
      defaultMode: 420
      secretName: test-secret

挂载Secret或Config类型的volume时,添加一个subPath字段即可,可将其以文件的形式挂载,而不是以目录的形式。

Secret

1. 创建secret

apiVersion: v1
kind: Secret
metadata:
  name:test-secret
type: Opaque
data:
 test.txt: >-
    ************************

2. 容器中挂载secret

containers:
  - image: 'busybox:latest'
    name: test
    volumeMounts:
      - mountPath: /etc/test/test.txt
        name: test-volume
        readOnly: true
        subPath: test.txt
# ....
volumes:
  - name: test-volume
    secret:
      defaultMode: 420
      secretName: test-secret

secret中的test.txt文件将会单个文件的形式挂载到/etc/test/目录下

Configmap

1. 创建ConfigMap

oc create configmap crack-jar --from-file=atlassian-extras-3.2.jar --from-literal=text=atlassian-extras-3.2.jar

2. 容器中挂载ConfigMap

# ....
volumeMounts:
- mountPath: /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar
  name: crack-jar
  readOnly: true
  subPath: atlassian-extras-3.2.jar
# ....
volumes:
- configMap:
    defaultMode: 420
    name: crack-jar
  name: crack-jar

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文