在使用KubeCtl的Minikube上,我使用以下命令运行由Docker创建的镜像:
kubectl run my-service --image=my-service-image:latest --port=8080 --image-pull-policy Never
但是在Minukube上,将不同的配置应用于该应用程序。我在部署文件中准备了一些环境变量,并希望将它们应用于Minikube上的镜像。有没有一种方法可以告诉KubeCtl使用给定的部署文件来运行这些镜像,甚至可以通过其他方式为镜像提供这些值?例如,我尝试了KubeCtl的apply动词,但是它尝试创建pod而不是在其上应用配置。
最佳答案
在minukube / kubernetes中,您需要在pod / deployment的yaml文件中应用环境变量。
这是如何在部署规范中配置环境变量的示例:
apiVersion: apps/v1
kind: Pod
metadata:
name: envar-demo
labels:
purpose: demonstrate-envars
spec:
containers:
- name: envar-demo-container
image: gcr.io/google-samples/node-hello:1.0
env:
- name: DEMO_GREETING
value: "Hello from the environment"
- name: DEMO_FAREWELL
value: "Such a sweet sorrow"
Here您可以找到有关环境变量的更多信息。在这种情况下,如果要更改任何值,则需要删除容器并再次应用它。但是,如果使用
deployment
,则可以使用kubectl apply
命令进行所有修改。
关于docker - 在Minikube上运行镜像时应用特定的部署文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63480220/