web-dev-qa-db-fra.com

"Comment corriger 'Erreur: doit fournir un nom ou spécifier --generate-name' dans Helm"

Comment réparer Error: must either provide a name or specify --generate-name dans Helm

Création d'un exemple de nom de graphique de barre sous forme de mychart et écriture du déploiement.yaml, service.yaml, ingress.yaml avec le service nginx. Après cela, exécuter la commande comme $ helm install mychart

service.yaml

apiVersion: v1
kind: Service
metadata:
  name: nginx
spec:
  ports:
  - name: main
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: nginx

deployment.yaml

apiVersion: extensions/v1beta2
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 3
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx:1.13
          ports:
              containerPort: 80

ingress.yaml

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: nginx
  annotations:
    http.port: "443"
spec:
    backend:
        serviceName: nginx
        servicePort: 80

Production attendue: ..... status: DEPLOYED

15
praveen

juste pour ajouter --generate-name à la fin de la commande helm

10
Chen Wang

Selon la documentation de barre pour v3.x

helm install --help
Usage:
helm install [NAME] [CHART] [flags]

vous souhaitez utiliser:
helm installe le tableau "votre nom de version"

Par exemple:

# helm repo add stable https://kubernetes-charts.storage.googleapis.com/
# helm install wordpress-helm-testing stable/wordpress 
NAME: wordpress-helm-testing
LAST DEPLOYED: 2019-10-07 15:56:21.205156 -0700 PDT m=+1.763748029
NAMESPACE: default
STATUS: deployed
NOTES:
1. Get the WordPress URL:

  NOTE: It may take a few minutes for the LoadBalancer IP to be available.
        Watch the status with: 'kubectl get svc --namespace default -w wordpress-helm-testing'
  export SERVICE_IP=$(kubectl get svc --namespace default wordpress-helm-testing --template "{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}")
  echo "WordPress URL: http://$SERVICE_IP/"
  echo "WordPress Admin URL: http://$SERVICE_IP/admin"

2. Login with the following credentials to see your blog

  echo Username: user
  echo Password: $(kubectl get secret --namespace default wordpress-helm-testing -o jsonpath="{.data.wordpress-password}" | base64 --decode)


#helm list
NAME                    NAMESPACE   REVISION    UPDATED                                 STATUS      CHART          
wordpress-helm-testing  default     1           2019-10-07 15:56:21.205156 -0700 PDT    deployed    wordpress-7.3.9

Il s'agit d'une meilleure approche opérationnelle car elle élimine le caractère aléatoire de vos noms de version. Vous voudrez peut-être utiliser quelque chose comme un nom d'utilisateur ou tout ce qui le rend unique et ajoute du sens à la version autre que GUID l'option --generate-name vous donnera.

14
einarc

Dans Helm v3, vous pouvez utiliser:

helm install [NAME] [CHART]

ou:

helm install [CHART] --generate-name

Exemples:

helm install reloader stakater/reloader
helm install stakater/reloader --generate-name

Dans le manuel d'aide:

helm install --help
Usage:
  helm install [NAME] [CHART] [flags]
Flags:
  -g, --generate-name            generate the name (and omit the NAME parameter)
2
Matthias

En supposant que le graphique se trouve dans le répertoire actuel:

helm installe un nom.

Production:

NAME: some-name
LAST DEPLOYED: Sun Jan  5 21:03:25 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
0