---
slug: "kubernetes-secret-from-env-file"
title: "Kubernetes secret を env ファイルから作る"
description: "ローカルに .env というファイル名でシークレット情報を保存しており、それを kubernetes に登録する時。"
url: "https://www.ytyng.com/blog/kubernetes-secret-from-env-file"
publish_date: "2021-10-11T09:25:18Z"
created: "2021-10-11T09:25:18Z"
updated: "2026-02-26T21:25:27.016Z"
categories: []
keywords: ""
featured_image_url: "https://media.ytyng.com/resize/20230812/634cda8afa1e45b8bd23076fce3ee2af.png.webp?width=768"
has_video: false
has_music: false
video_urls: []
music_urls: []
lang: "ja"
---

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

<p>ローカルに .env というファイル名でシークレット情報を保存しており、それを kubernetes に登録する時。</p>
<p>デプロイ時に下記スクリプトを開発環境で実行する。</p>
<pre><span># kubeconfig を設定<br />export </span><span>KUBECONFIG</span>=<span>$</span>{HOME}/.kube/my-kube-config<br /><br /># もし既に secret があったら削除する (次に行う登録のため)<br /><span>kubectl </span>-n mynamespace delete secret myapp-env<br /># ローカルの ../.env を secret に登録する<br /><strong>kubectl -n mynamespace create secret generic myapp-env --from-env-file=../.env</strong></pre>
<p></p>
<p>使う時</p>
<pre><span>apiVersion</span>: apps/v1<br /><span>kind</span>: Deployment<br /><span>metadata</span>:<br />  <span>name</span>: myapp-deployment<br />  <span>namespace</span>: mynamespace<br /><span>spec</span>:<br />  <span>replicas</span>: 1<br />  <span>selector</span>:<br />    <span>matchLabels</span>:<br />      <span>app</span>: myapp<br />  <span>template</span>:<br />    <span>metadata</span>:<br />      <span>labels</span>:<br />        <span>app</span>: myapp<br />    <span>spec</span>:<br />      <span>containers</span>:<br />        - <span>name</span>: myapp<br />          <span>image</span>: my-image:latest<br />          <span>imagePullPolicy</span>: Always<br />          <span>ports</span>:<br />            - <span>containerPort</span>: 8008<br />          <span>env</span>:<br />            - <span>name</span>: DJANGO_SETTINGS_MODULE<br />              <span>value</span>: myapp.settings.production<br /><strong>          envFrom:</strong><br /><strong>            - secretRef:</strong><br /><strong>                name: myapp-env</strong></pre>
