>백엔드 개발 >Golang >golang을 사용하여 kubernetes 배포에 환경 변수를 추가하는 방법은 무엇입니까?

golang을 사용하여 kubernetes 배포에 환경 변수를 추가하는 방법은 무엇입니까?

王林
王林앞으로
2024-02-08 23:45:28583검색

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

PHP 편집기 Apple은 golang을 사용하여 Kubernetes 배포에 환경 변수를 추가하는 방법에 대한 기사를 제공합니다. Kubernetes 배포에서 환경 변수 설정은 매우 중요하며 애플리케이션의 동작을 구성하는 데 도움이 될 수 있습니다. golang을 사용하면 환경 변수를 Kubernetes Pod에 쉽게 삽입하여 보다 유연하고 구성 가능한 배포를 달성할 수 있습니다. 다음으로, 이 목표를 달성하기 위해 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제