kubernetes yaml文件访问外部变量

1、在 shell脚本里 使用export为变量赋值

export REGISTRY_HOST=$1
export IMAGE_MYSQL_VERSION=$2

2、在yaml中编辑如下,红色部分就是变量引用了

spec:
  containers:
    - name: mysql
      image: $REGISTRY_HOST/mysql:$IMAGE_MYSQL_VERSION
      imagePullPolicy: Always

3、启动时使用如下命令,不能使用 kubectl create -f mysql.yaml

envsubst < mysql.yaml | kubectl apply -f -

4、后记
还有其它的方式可以变相解决变量传输的问题,但是这些都比较麻烦,不推荐
1、使用 替换命令,比如sed,在create之前进行替换
2、使用cat eof 来动态生成yaml文件

 

posted @ 2022-04-08 18:01  oceanyang  阅读(438)  评论(0编辑  收藏  举报