Skip to main content
Le runtime Node.js exécute des bots, des API et des sites web rendus côté serveur en JavaScript et en TypeScript. Square Cloud installe vos dépendances à partir de package.json et démarre votre application avec Node.js.

Avant de commencer

  • Node.js et npm sur votre machine. Si ce n’est pas le cas, téléchargez-les depuis le site officiel de Node.js.
  • Un compte Square Cloud : inscrivez-vous avec votre e-mail ou GitHub.
  • Un plan actif. Consultez les plans et choisissez celui qui convient à votre projet.

Configurer Square Cloud

Si vous envoyez votre application depuis le tableau de bord, vous pouvez passer cette section : le tableau de bord crée le fichier de configuration squarecloud.app pour vous.

Référence du fichier de configuration

Le fichier squarecloud.app indique à Square Cloud comment exécuter votre application : son fichier principal, sa mémoire, la version du runtime, son nom et, pour un site web, son sous-domaine.
Un fichier de configuration complet pour chaque type d’application :
squarecloud.app
VERSION=recommended exécute la branche LTS actuelle de Node.js, et VERSION=latest la version la plus récente.

Ce que Square Cloud exécute

  • Si le champ START n’est pas défini dans le fichier de configuration, Square Cloud exécute node MAIN. Lorsque l’application dispose de 1024 Mo de mémoire ou plus, il ajoute --max_old_space_size=<MEMORY> (la limite du heap de Node.js, en Mo). Si le champ START est défini, la valeur qu’il contient sera exécutée directement. Pour plus d’informations sur les paramètres du fichier de configuration, consultez les paramètres de configuration.
  • Si l’application n’a pas de dossier node_modules, Square Cloud exécute npm install --no-audit --no-fund avant de la démarrer. Les paquets de devDependencies ne sont pas installés, car le runtime définit NODE_ENV=production. Lorsque node_modules existe déjà, l’étape d’installation est ignorée.

Port et hôte pour les sites web et les API

Square Cloud définit la variable d’environnement PORT à 80 et HOST à 0.0.0.0. Votre serveur doit écouter sur ce port et sur toutes les interfaces réseau, par exemple avec Express :
Next.js, Nuxt, React Router, Astro et SolidStart lisent PORT d’eux-mêmes : leurs guides de framework indiquent quand il n’y a rien à modifier.

Préparer le projet

Fichiers requis

  • squarecloud.app, à la racine du ZIP.
  • Votre fichier principal, par exemple index.js ou src/index.ts.
  • package.json, avec vos dépendances. Un envoi sans ce fichier échoue avec INVALID_DEPENDENCY.
Le fichier de configuration (squarecloud.app) doit se trouver à la racine du fichier zip. Sinon, Square Cloud ne pourra pas le trouver lors du déploiement.
Square Cloud exécute TypeScript nativement avec tsx (npx tsx MAIN), mais il reste recommandé de compiler en JavaScript pour la production : générez le build sur votre machine et faites pointer MAIN vers le fichier compilé.

Ce qu’il faut exclure

  • node_modules : Square Cloud retire ce dossier de votre envoi et installe les dépendances à partir de package.json au premier démarrage. L’envoi reste ainsi léger et les dépendances sont compilées pour le système du serveur.
  • Les fichiers de verrouillage (package-lock.json, yarn.lock, pnpm-lock.yaml) : la CLI et l’extension VS Code les excluent par défaut, donc npm installe les versions les plus récentes autorisées par les plages de package.json. Lorsque vous avez besoin des versions exactes de votre fichier de verrouillage, réincluez-le avec !package-lock.json dans votre squarecloud.ignore.

Guides des frameworks

Express

Fastify

NestJS

Next.js

Nuxt

React Router

Angular

Astro

SolidJS

Qwik

React

Vue

Les applications monopages générées avec Vite, React, Vue ou Preact peuvent aussi s’exécuter sans Node.js, sur le runtime statique.

Dépannage

Cette erreur se produit lorsque le fichier défini comme « main » pour votre application dans le fichier de configuration n’existe pas, est mal écrit, ou que le chemin est incorrect. Si votre fichier principal se trouve dans un dossier, par exemple, vous devez spécifier folder/file.js.
La quantité minimale de RAM requise pour héberger un bot est de 256 Mo et pour un site/API de 512 Mo. Cependant, selon la taille et la complexité de votre application, il peut être conseillé d’allouer une plus grande quantité de RAM pour éviter que votre application ne manque de mémoire et ne plante.
Pour les autres problèmes, consultez le dépannage.

Déployer

Via le tableau de bord

1

Accéder à la page d'upload

Accédez à la page d’upload et téléversez le fichier zip de votre projet.
2

Configurer votre environnement

Après avoir téléversé votre zip, vous devrez configurer le nom, le fichier principal ou l’environnement d’exécution ainsi que d’autres paramètres de votre projet.
Si vous téléversez un projet web, veillez à sélectionner « Publication Web » et à définir un sous-domaine pour votre projet.
3

Déployer votre projet

Enfin, cliquez sur le bouton « Deploy » pour héberger votre projet sur Square Cloud.
Une fois le déploiement effectué, vous pouvez suivre l’état et les logs de votre projet depuis le tableau de bord.
Téléversement d'une application vers Square Cloud
4

Confirmez que votre application est en ligne

Votre premier déploiement prend généralement moins d’une minute. Dans le tableau de bord, attendez que le statut de votre application affiche « en cours d’exécution » et vérifiez les logs pour détecter d’éventuelles erreurs de démarrage.
Si vous avez déployé un site web ou une API, ouvrez https://<votre-sous-domaine>.squareweb.app dans votre navigateur, vous devriez voir votre application répondre. Si vous avez déployé un bot, envoyez-lui une commande pour confirmer qu’il est en ligne.
Votre application ne démarre pas ? Consultez le guide de dépannage pour les causes les plus courantes et leurs solutions.

Via la CLI

Pour utiliser cette méthode, votre projet a besoin d’un fichier de configuration nommé squarecloud.app à sa racine. Il indique à Square Cloud comment exécuter votre application.

Guide du fichier de configuration

Apprenez comment créer le fichier de configuration squarecloud.app qui définit l’environnement de votre application.
1

Installer la CLI

Installez la CLI Square Cloud. Si vous l’avez déjà, exécutez la même commande pour la mettre à jour :
2

Se connecter

Exécutez la commande ci-dessous. Elle ouvre votre navigateur : approuvez-y la connexion et la CLI est prête. Il n’y a aucune clé API à copier. Pour les scripts et la CI, consultez Authentification de la CLI.
3

Téléverser votre projet

Depuis le dossier de votre projet, exécutez la commande ci-dessous. La CLI compresse le dossier courant en zip, sans ce que liste squarecloud.ignore, puis l’envoie :
Pour téléverser un zip que vous avez créé vous-même, passez-le avec --file :
4

Confirmez que votre application est en ligne

Votre premier déploiement prend généralement moins d’une minute. Vérifiez le statut et les logs de votre application directement depuis le terminal :
Si vous avez déployé un site web ou une API, ouvrez https://<votre-sous-domaine>.squareweb.app dans votre navigateur, vous devriez voir votre application répondre. Si vous avez déployé un bot, envoyez-lui une commande pour confirmer qu’il est en ligne.
Votre application ne démarre pas ? Consultez le guide de dépannage pour les causes les plus courantes et leurs solutions.

Prochaines étapes

Variables d'environnement

Gardez les secrets et les paramètres hors de votre code et lisez-les à l’exécution.

Domaine personnalisé

Servez votre application sur votre propre domaine, à partir du plan Standard.

Dépannage

Corrigez une application qui ne démarre pas ou un site qui ne répond pas.

Contactez-nous

Si vous rencontrez toujours des difficultés techniques, notre équipe de support spécialisée est disponible pour vous aider. Contactez-nous et nous serons ravis de vous aider à résoudre tout problème. La qualité du support compte pour beaucoup dans la note que les développeurs donnent à Square Cloud, 4,9/5 sur 402 avis sur Google et Trustpilot.