DevOps Bootcamp · レッスン

b64enc、toYaml、indent によるエンコード

構造化データを有効なマニフェストにシリアライズします。

レッスン 4/413 ステップ

「b64enc、toYaml、indent によるエンコード」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。

構造化された値をシリアライズする

値が文字列ではなく、オブジェクト全体である場合もあります。toYamlのようなヘルパーを使うと、構造を有効なマニフェストの断片に変換できます。

toYaml でマップをレンダリングする

toYaml関数は、values にあるマップやリストを、適切に整形された YAML テキストに変換します。

{{ toYaml .Values.resources }}

インデントがすべて

生のtoYaml出力は0列目から始まります。これをネストした YAML にそのまま配置するとドキュメントが壊れるため、インデントする必要があります。

indent でブロックを移動する

indent関数はブロックの各行にスペースを追加し、シリアライズされた出力を親キーの下にそろえます。

{{ toYaml .Values.resources | indent 4 }}

改行を考慮した nindent

nindentヘルパーは、インデントする前に先頭へ改行を追加します。そのため、キーの後でブロックを独立した行にきれいに配置できます。

resources: {{ toYaml .Values.resources | nindent 4 }}

indent と nindent の違い

キーと同じ行の直後にはnindentを使い、ブロックがすでに新しい行から始まっている場合は indent を使います。

b64enc で Base64 化する

Kubernetes の Secret では、データを Base64 でエンコードして保存します。b64encヘルパーは、平文の値をその形式にエンコードします。🔐

password: {{ .Values.password | b64enc }}

b64dec でデコードする

逆の処理を行うb64decヘルパーは、Base64 を平文にデコードします。既存のエンコード済みの値を読み取る際に便利です。

{{ .Values.encoded | b64dec }}

エンコードは暗号化ではない

b64encはエンコードするだけであり、安全性を高めるものではないことを覚えておいてください。誰でもデコードできるため、本当の Secret 管理の代わりにはなりません。

文字列を quote してからエンコードする

Secret の値では、数値に見える文字列をそのまま保持できるよう、まずquoteし、その後 quote した結果を b64enc でエンコードすることがよくあります。

token: {{ .Values.token | quote | b64enc }}

組み合わせて使う

一般的なブロックでは、これらをcombinesします。toYaml でシリアライズし、適切なキーの下で nindent して、整った有効な出力にします。

nodeSelector: {{ toYaml .Values.nodeSelector | nindent 8 }}

クイックチェック

先頭に改行を追加し、ブロックをインデントするヘルパーはどれですか。

振り返り

toYamlでシリアライズし、indent と nindent で位置をそろえ、b64enc で Secret のデータをエンコードすることを学びました。🎉

無料で開始

AI チューターと学ぶ DevOps Bootcamp — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
142
レッスン
568

よくある質問

「b64enc、toYaml、indent によるエンコード」レッスンは無料ですか?

はい。「b64enc、toYaml、indent によるエンコード」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。

「b64enc、toYaml、indent によるエンコード」で何を学びますか?

構造化データを有効なマニフェストにシリアライズします。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

DevOps Bootcampを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「b64enc、toYaml、indent によるエンコード」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDevOps Bootcampレッスンでコードを書いて実行できますか?

はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 関数に Values をパイプで渡す
  2. default、required、quote
  3. Sprig Library の文字列 Helper
  4. b64enc、toYaml、indent によるエンコード
← DevOps Bootcampに戻る