docker - 在Minikube上运行镜像时应用特定的部署文件

标签 docker kubernetes minikube

在使用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/

相关文章:

docker - docker 入口点没有这样的文件或目录

docker - 访问在 nvidia-docker 容器中运行的 jupyter notebook 所需的登录密码

windows - Windows Pod 上的 Kubernetes Minikube 拉取镜像失败

docker - (Kubernetes + Minikube) 无法从本地注册表获取 docker 镜像

kubernetes - Configmap - 现有文件被删除

nginx - 更改 Kubernetes nginx-ingress-controller 端口

linux - Dockerfile 与 docker-compose.yml

postgresql - docker : "could not open output file" "protocol error" 中的 pg_dump

kubernetes - 如何使用 kubernetes java 客户端获取所有 Kubernetes Deployment 对象?

azure - Helm 3 搜索未显示来自 ACR 的结果