我正在为 django webapp 设置 kubernetes 设置。
我在创建部署时传递环境变量,如下所示
kubectl create -f deployment.yml -l key1=value1
我收到如下错误
error: no objects passed to create
如果我在创建部署时删除环境变量 -l key1=value1,则能够成功创建部署。
部署.yaml如下
#Deployment
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
service: sigma-service
name: $key1
创建部署时出现上述错误的原因是什么?
我用了 envsubst (https://www.gnu.org/software/gettext/manual/html_node/envsubst-Inspiration.html https://www.gnu.org/software/gettext/manual/html_node/envsubst-Invocation.html) 为了这。创建一个deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: $NAME
labels:
app: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
Then:
export NAME=my-test-nginx
envsubst < deployment.yaml | kubectl apply -f -
不确定您使用什么操作系统来运行它。在 macOS 上,envsubst 安装如下:
brew install gettext
brew link --force gettext
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)