Linode (Akamai Cloud)
Déployez rtCloud sur Linode à l’aide d’un StackScript. Aucune configuration nécessaire : créez simplement le serveur et suivez les étapes post-déploiement.
Étape 1 — Lancez le StackScript
Cela ouvre la page StackScript dans Linode Cloud Manager. Cliquez sur Déployer le nouveau Linode.
Étape 2 — Remplissez le formulaire de Linode
Remplissez le formulaire standard de création de serveur de Linode :
| Champ | Valeur recommandée |
|---|---|
| Image | Ubuntu 22.04 LTS |
| Région | Au plus proche de vos utilisateurs |
| Plan | CPU partagé 4 Go ou plus |
| Mot de passe racine | Définir un mot de passe fort |
| Pare-feu | Pas de pare-feu (recommandé) |
| Fuseau horaire (notre seul champ) | Le fuseau horaire de votre serveur (par défaut : Asia/Ho_Chi_Minh) |
Pourquoi pas de pare-feu ? Le script d’installation nécessite un accès Internet sortant (extractions Docker, Let’s Encrypt). Le blocage des ports lors du premier démarrage peut entraîner l’échec du déploiement. Vous pouvez attacher un pare-feu une fois la configuration terminée — voir Règles de pare-feu ci-dessous pour les règles correctes.
Cliquez sur Créer Linode lorsque vous avez terminé.
Étape 3 — Attendez la fin de la configuration
Le script s’exécute automatiquement au premier démarrage. Il installe Docker, extrait l’image rtSurvey, initialise la base de données et démarre tous les services. Cela prend 5 à 10 minutes.
Vous pouvez suivre la progression directement dans Linode Cloud Manager — aucun SSH requis :
- Go to your Linode dashboard
- Cliquez sur votre Linode nouvellement créé
- Cliquez sur Lancer la console LISH (en haut à droite de la page de détails Linode)
Un terminal de navigateur s’ouvre et affiche le journal de démarrage en direct : l’onglet Weblish fonctionne directement dans votre navigateur, aucun client SSH n’est nécessaire.
Attendez de voir :
============================================================
rtSurvey deployment complete!
============================================================
Server IP : <your-server-ip>
App URL : http://<your-server-ip> (HTTP only until domain is set)
Admin : admin / admin
============================================================
Le journal affiche également l’adresse IP de votre serveur – vous en aurez besoin pour l’étape suivante.
Étape 4 — Configurer SSL
Open your browser at http://<server-ip>. The app will redirect you to the SSL setup screen.
Suivez le Guide de configuration SSL → pour configurer HTTPS. Le sous-domaine gratuit rtsurvey.com est l’option la plus rapide : aucune configuration DNS n’est nécessaire.
Étape 5 — Changer le mot de passe par défaut
Tous les mots de passe par défaut sont « admin ». Modifiez-les immédiatement après votre première connexion :
- Mot de passe administrateur de l’application — paramètres du compte dans l’application
- Keycloak admin — accessible at
https://your-domain.com/auth/admin(login:admin/admin)
Règles de pare-feu (Linode Cloud Firewall)
Si vous attachez un pare-feu cloud Linode à ce serveur, utilisez les règles suivantes :
Entrant
| Étiquette | Actions | Protocole | Port | Sources | Remarques |
|---|---|---|---|---|---|
accepter-inbound-ssh | Accepter | TCP | 22 | Tout IPv4, Tout IPv6 | Accès SSH |
accepter-entrant-http | Accepter | TCP | 80 | Tout IPv4, Tout IPv6 | Nginx (défi HTTP + ACME) |
accepter-entrant-https | Accepter | TCP | 443 | Tout IPv4, Tout IPv6 | Nginx (HTTPS après configuration SSL) |
accepter-entrant-brillant | Accepter | TCP | 3838 | Tout IPv4, Tout IPv6 | Serveur Shiny (analyse R) |
accepter-inbound-icmp | Accepter | ICMP | — | Tout IPv4, Tout IPv6 | Ping/diagnostic |
| Politique entrante par défaut | Laisser tomber | Bloquer tout le reste |
Sortant
| Étiquette | Actions | Remarques |
|---|---|---|
| Politique sortante par défaut | Accepter | Autoriser tous les appels sortants (extractions Docker, certbot, API GoDaddy, etc.) |
Ports NON nécessaires en externe
Ces ports sont liés à « 127.0.0.1 » uniquement et ne sont jamais accessibles depuis l’extérieur du serveur :
| Port | Services | Raison |
|---|---|---|
| 8080 | Conteneur d’applications | Nginx le proxy en interne |
| 8090 | Conteneur Keycloak | Nginx le proxy en interne |
| 3306 | MySQL | Réseau Docker interne uniquement |
Dépannage
Vérifiez le journal d’installation
tail -200 /var/log/stackscript.log
Vérifiez le journal SSL
tail -200 /var/log/rtsurvey-ssl.log
Afficher l’état du conteneur
docker compose -f /opt/rtsurvey/docker-compose.production.yml ps