Exposer une application
Exposer une application web (https)
Dans votre zone DNS, faites pointer votre domaine sur l’URL de l’ingress du cluster BlackSwift hébergeant votre projet :
<host> 300 IN CNAME ingress.bseufr01.blackswift.hosting.
Créer une Ingress dans votre namespace routant votre domaine sur le service de votre choix, par exemple avec la commande :
kubectl create ingress <ingressname> -n <namespace> \--rule "<host>.<domain>/*=<service-name>:<port>",tls=<host>-tls \--annotation cert-manager.io/issuer=letsencrypt
Exposer une application non-HTTP
Créer un Service de type NodePort dans votre namespace, exposant les Pods de votre choix. Par exemple pour exposer un déploiement :
> kubectl -n <namespace> expose deploy/<deploy-name> --type=NodePort
Puis vous pouvez récupérer le port affecté à votre service :
> kubectl -n <namespace> get svc <service-name>NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE<service-name> NodePort 10.43.154.229 <none> 80:32248/TCP 2m4s
Vous pouvez alors consommer votre application en utilisant l’URL d’exposition des nodePorts ainsi que le port attribué à votre service :
nodeport.bseufr01.blackswift.hosting:<port>
Si vous avez tout fait correctement, Bravo, vous êtes sur internet ! Dans le cas contraire, n’hésitez pas à relire chaque étape au cas où quelque chose aurait se serait mal passé ou venir nous demander de l’aide sur Slack.