Mettre une application en ligne sur un nom de domaine
Transformer une VM qui écoute sur un port en une URL publique en https, avec l'enregistrement DNS créé automatiquement.
Mettre en ligne8 min de lectureUtilisateur, propriétaire de la VM
Ce que vous obtenez : Une URL publique de la forme https://<nom>.<domaine> qui pointe sur votre application.
Avant de commencer
- Une VM en cours d'exécution avec une adresse IP : une VM arrêtée fait échouer la demande.
- Un service qui écoute déjà sur un port dans la VM (par exemple un serveur web sur le port 80). La plateforme ne démarre pas votre application à votre place.
- Pour du https : un certificat valide doit déjà être en place. Voir la section « La partie https ».
1.Ce que fait la plateforme, concrètement
En mode proxy, la plateforme crée deux choses pour vous : une redirection qui achemine le trafic vers <IP de la VM>:<port>, et un enregistrement DNS A vers l'IP publique du serveur. C'est ce second point qui rend l'URL utilisable par n'importe qui : un proxy sans DNS ne sert à rien, et la plateforme refuse donc de créer le proxy si le DNS n'est pas configuré (erreur DNS_ERROR).
Information
Tout est annulé proprement si la création DNS échoue : la redirection est retirée. Vous ne restez jamais dans un état à moitié publié.
Supprimer la VM plus tard supprime aussi son entrée de publication, la redirection, le transfert de port et l'enregistrement DNS. Rien ne traîne.
2.Pas à pas, depuis l'écran
- 1
Démarrez votre VM
Tableau de bord ou page VMs. Le bouton de publication n'apparaît que sur une VM en marche.
- 2
Ouvrez la modale de publication
Sur la ligne de la VM, cliquez l'icône 🌐 (info-bulle « Publier »). La modale s'intitule « Publier un port » : elle ne porte pas le nom de la VM.
- 3
Choisissez le type
Trois choix de type : le transfert de port brut, la redirection HTTP, ou la redirection HTTPS. Pour mettre une application web en ligne, prenez HTTP ou HTTPS.
- 4
Donnez un nom à la publication
Ce que le champ Nom contient à l'ouverture dépend de l'écran. Sur la page VMs et la fiche de la machine, il porte le préfixe
<nom de la VM>-et son texte grisé suggère la suite (-web). Sur le tableau de bord, il est rempli en entier :<nom de la VM>-web. Ce nom devient votre nom de domaine : lisez la section « Le nom de domaine n'est pas libre » avant de le choisir. - 5
Indiquez le port de votre application dans la VM
1 à 65535, valeur par défaut 80. C'est le port sur lequel votre service écoute.
- 6
Publiez
Le résultat s'affiche à deux endroits : dans l'encart de succès de la modale, et dans la notification en haut de l'écran. L'un ou l'autre suffit.
- Tableau de bord
- VMs
- icône 🌐 « Publier »
site-vitrine-) et son texte grisé suggère site-vitrine-web : c'est ce nom, suffixé de quatre caractères aléatoires, qui devient votre sous-domaine. Le champ Port VM est celui sur lequel votre application écoute dans la VM. (cliquez la capture pour l'agrandir)Où lire le résultat
L'encart de succès de la modale affiche soit le port hôte publié (DNAT), soit l'URL publique (proxy). Une notification en haut de l'écran porte la même information. L'un ou l'autre suffit.
Le nom envoyé dépend du type et de l'écran
En mode DNAT, la base envoyée dépend de l'écran : sur la page VMs et sur la fiche de la machine, le champ n'est pas envoyé et le nom part en <nom de la VM>-<port> ; sur le tableau de bord, c'est le champ. En mode proxy, c'est le champ, partout. Le serveur ajoute ensuite un suffixe dans tous les cas.
Choisir le port hôte
Depuis le tableau de bord, le port hôte n'est pas proposé : l'allocation est automatique. Si vous voulez le choisir, passez par la page Publications (/app/publish).
3.Le nom de domaine n'est pas libre : à lire avant de publier
C'est la surprise principale de cette fonctionnalité, et elle n'est visible nulle part dans l'interface : le nom de domaine est imposé. Il est dérivé du nom de la publication, et jamais du server_name transmis dans la requête. Autrement dit, vous ne pouvez pas déclarer « monsite.fr » et recevoir du trafic pour « monsite.fr ».
Le nom obtenu est <nom de publication>.<domaine de la plateforme>, et l'enregistrement DNS est créé sous cette zone. Le nom de publication porte son suffixe aléatoire : sur ce site, le domaine configuré est alpha.robinzmuda.fr, et une publication faite depuis boutique se lit donc en boutique-0745.alpha.robinzmuda.fr. Relevez le nom réel dans la liste ou dans la notification.
Attention
Pour utiliser votre propre nom de domaine, celui-ci doit appartenir à la zone DNS configurée sur la plateforme. Vérifiez ce point avant de le promettre à vos utilisateurs.
4.La partie https : un certificat doit exister AVANT
Choisir HTTPS ne demande pas de certificat : la redirection utilise un certificat qui doit déjà être en place sur la plateforme. S'il n'y en a pas, le https ne fonctionnera pas.
Le certificat couvre l'ensemble du domaine (*.<domaine>), et non un nom en particulier : tout nom publié sous ce domaine en bénéficie.
Ce que le certificat couvre
- Toutes les redirections https de la plateforme s'appuient sur le même certificat : vous n'avez rien à demander de votre côté.
- Le renouvellement est automatique : vous n'avez rien à faire.
- Tout nom publié sous ce domaine résout automatiquement, sans créer d'enregistrement au cas par cas.
5.Vérifier que c'est bien en ligne
- 1
Ouvrez l'URL de la notification
C'est l'URL publique complète, avec le domaine réellement utilisé.
- 2
Si la page ne répond pas, vérifiez dans cet ordre
la VM est-elle en marche ? Le service écoute-t-il bien sur le port indiqué, dans la VM ? Le nom de publication est-il celui attendu ?
- 3
En https, si le navigateur refuse le certificat
aucun certificat n'est en place pour ce domaine, ou le nom ne correspond pas à celui du certificat.
Information
La page Publications (/app/publish) liste vos publications et permet d'en supprimer. La fiche de la VM affiche aussi ses publications, dans un panneau dédié.
Les pièges, en résumé
Le nom de domaine est imposé
Il est dérivé du nom de publication. Vous ne pouvez pas choisir votre propre domaine.
https exige un certificat déjà en place
Sans certificat en place pour le domaine, le https ne fonctionne pas.
Le nom envoyé n'est pas toujours celui du champ
Sur la page VMs et la fiche de la machine, un DNAT envoie <nom de la VM>-<port> ; sur le tableau de bord, le champ.
La VM doit tourner
Une machine arrêtée ne peut pas être publiée : démarrez-la d'abord.
Ce guide est-il a jour ?
Chaque affirmation de cette page a ete verifiee sur le produit avant publication, et ce qui n'etait pas verifie n'a pas ete ecrit. Une page peut cependant vieillir avant le produit : si un ecran ne correspond plus a ce que vous voyez, dites-le, la page sera reprise.
Prêt à créer vos premières VMs ?
30 secondes d'inscription. 2 secondes pour la première VM. Zéro engagement.