【发布时间】:2022-02-23 22:41:00
【问题描述】:
我的项目中有一个文件夹,其中包含 1 个属性文件和 1 个 jar 文件(db-driver)文件。
我需要将这两个文件复制到我的 pod 上的 /usr/local/tomcat/lib 目录。我不确定如何在 kubernetes yaml 文件中实现这一点。下面是我的 yaml 文件,我试图在其中使用 configMap 来实现这一点,但 pod 创建失败并出现错误“configmap references non-existent config key: app.properties”
目标/usr/local/tomcat/lib 已经有其他 jar 文件,所以我尝试使用 configMap 不覆盖整个目录,只添加 2 个特定于我的应用程序的文件。
apiVersion: apps/v1
kind: Deployment
metadata:
name: tomcatdeployment
labels:
app: tomcat
spec:
replicas: 1
selector:
matchLabels:
app: tomcat
template:
metadata:
labels:
app: tomcat
spec:
containers:
- name: tomcat
image: tomcat:latest
imagePullPolicy: IfNotPresent
volumeMounts:
- name: appvolume
mountPath: /usr/local/data
- name: config
mountPath: /usr/local/tomcat/lib
subPath: ./configuration
ports:
- name: http
containerPort: 8080
protocol: TCP
volumes:
- name: appvolume
- name: config
configMap:
name: config-map
items:
- key: app.properties
path: app.properties
---
apiVersion: v1
kind: ConfigMap
metadata:
name: config-map
data:
key: app.properties
当前目录结构...
.
├── configuration
│ ├── app.properties
│ └── mysql-connector-java-5.1.21.jar
├── deployment.yaml
└── service.yaml
请分享您对如何实现这一目标的宝贵反馈。
问候。
【问题讨论】:
标签: kubernetes