Kubernetes secret を env ファイルから作る

Posted by: ytyng 7 months, 1 week ago

ローカルに .env というファイル名でシークレット情報を保存しており、それを kubernetes に登録する時。

デプロイ時に下記スクリプトを開発環境で実行する。

# kubeconfig を設定
export
KUBECONFIG=${HOME}/.kube/my-kube-config

# もし既に secret があったら削除する (次に行う登録のため)
kubectl -n mynamespace delete secret myapp-env
# ローカルの ../.env を secret に登録する
kubectl -n mynamespace create secret generic myapp-env --from-env-file=../.env

使う時

apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp-deployment
namespace: mynamespace
spec:
replicas: 1
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: myapp
image: my-image:latest
imagePullPolicy: Always
ports:
- containerPort: 8008
env:
- name: DJANGO_SETTINGS_MODULE
value: myapp.settings.production
envFrom:
- secretRef:
name: myapp-env
Current rating: 4

Comments

Archive

2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011