How to pass command line arguments in kubernetes?

2019-03-25 15:40发布

Need to pass command line arguments for the docker containers appContainer1 & appContainer2 in the pod.yaml.

pod.yaml

apiVersion: v1
kind: Pod
metadata:
  name: microservices
  labels:
    app: apps
spec:
  containers:
    - name: appContainer1 
      image: gcr.io/mybucket/appContainerImage1 
      ports:
        - containerPort: 8080
    - name: appContainer2
      image: b.gcr.io/mybucket/appContainerImage2
      ports:
        - containerPort: 9090

In docker, I can pass the command line arguments via environment variable(-e)

docker run --rm -it -p 9090:9090 -e spring.profiles.dynamic=local applicationimage1

Similarly, I need to pass command line arguments when the containers run inside kubernetes.

1条回答
劳资没心,怎么记你
2楼-- · 2019-03-25 16:26

It sounds like you don't actually want command line arguments, but environment variables - and you can use env for that:

- name: appContainer1 
  image: gcr.io/mybucket/appContainerImage1 
  ports:
    - containerPort: 8080
  env:
    - name: spring.profiles.dynamic
      value: local

You can use command line arguments:

- name: appContainer1 
  image: gcr.io/mybucket/appContainerImage1 
  ports:
    - containerPort: 8080
  args:
    - foo
    - bar
    - "String containing:colons:"
查看更多
登录 后发表回答