我正在使用我的pod中的一个配置文件,这是我的应用程序所必需的。现在我用
将这个配置文件直接添加到我的Docker镜像中COPY ./example.conf /etc/example.conf
这是我的配置文件
的内容[example]
url = url
username = username
password = password
我希望能够通过helm(或其他方式)动态地给出url,因此docker image方法不合适。如何解决这个问题?
您应该使用volume
和volumeMount
来重构您的项目。
k8体积
configMap
注意:
- 你可以创建一个ConfigMap在你可以使用它。
- 使用ConfigMap作为子路径卷挂载的容器将无法接收ConfigMap更新。
- 文本数据作为使用UTF-8字符编码的文件公开。对于其他字符编码,请使用binaryData.
。
configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: test-conf
data:
example.conf: |
url = url
username = username
password = password
pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: test-pod
spec:
containers:
- name: test
image: busybox:1.28
volumeMounts:
- name: conf
mountPath: /etc/
volumes:
- name: conf
configMap:
name: test-conf