Webエンジニアのメモ帳

技術的な話を中心に書いています。

【Kubernetes】kubectlでsecretsの一部を取得する方法

kubectlで、以下のようなsecretを設定しているとします。

{
  "apiVersion": "v1",
  "data": {
    "config.yml": (json形式のデータ)
  },
  "kind": "Secret"
}

このとき、このsecretを取得するコマンドは以下のようになります。

kubectl -n kube-system get secret (secret名) -o json

secretsから、たとえばdataのconfig.ymlの部分だけ取得したい際には、以下のようなコマンドを使います。

kubectl -n kube-system get secret (secret名) -o jsonpath='{.data.config\.yml}'

なお、Jsonのkeyにドットなどを含む際にはエスケープをする必要があるので、注意してください。