ホームページ  >  記事  >  バックエンド開発  >  golang を使用して kubernetes デプロイメントに環境変数を追加するにはどうすればよいですか?

golang を使用して kubernetes デプロイメントに環境変数を追加するにはどうすればよいですか?

王林
王林転載
2024-02-08 23:45:28522ブラウズ

如何使用 golang 将环境变量添加到 kubernetes 部署?

php エディター Apple は、golang を使用して Kubernetes デプロイメントに環境変数を追加する方法に関する記事を提供します。 Kubernetes のデプロイメントでは、環境変数の設定は非常に重要であり、アプリケーションの動作の構成に役立ちます。 golang を使用すると、環境変数を Kubernetes ポッドに簡単に挿入して、より柔軟で構成可能なデプロイメントを実現できます。次に、この目標を達成するために golang を使用する方法を詳しく説明します。

質問内容

golang を使用して既存の kubernetes デプロイメントに環境変数を設定または追加する必要があります。再起動後に構成に追加する必要があります。

func (r *SparkETLReconciler) DoRestart(w http.ResponseWriter, req *http.Request) {
    ctx := context.TODO()
    r.Log.Info("restart hit!")
    fmt.Fprintf(w, "Hi there, I love %s!", req.URL.Path[1:])
    found := &appsv1.Deployment{}
    err := r.Get(ctx, types.NamespacedName{
        Name:      "vmc-etl-test",
        Namespace: "ndl",
    }, found)

    if err != nil {
        r.Log.Error(err, "deploy check failed")
    } else {
        fmt.Fprintf(w, "I found the deployment!")
    }

    deleteErr := r.DeleteAllOf(ctx, &corev1.Pod{}, client.InNamespace("ndl"), client.MatchingLabels{"operatorETLName": req.URL.Path[1:])

    if deleteErr != nil {
        r.Log.Error(deleteErr, "deletion of deployment's pods failed")
    } else {
        fmt.Fprintf(w, "Deployment's pods deleted, restarting")
    }
}

解決策

デプロイ後、次の方法で環境変数を追加できます。

リーリー

言うまでもなく、コンテナーにすでにいくつかの環境変数がある場合は、それらを append() することをお勧めします。そうしないと、上書きされてしまいます。

さらに、デプロイメント内で update() (または createorupdate()) への呼び出しを送信する必要があります。

以上がgolang を使用して kubernetes デプロイメントに環境変数を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。