Aller au contenu principal

Déployer Mastra sur Digital Ocean

Ce guide présente l'App Platform et les Droplets de Digital Ocean. Chacune de ces offres possède ses propres atouts et convient à différents types de projets et niveaux d'expertise. Consultez le comparatif de Digital Ocean pour comprendre leurs différences et choisir l'option la mieux adaptée à votre projet.

info

Ce guide décrit le déploiement du serveur Mastra. Si vous utilisez un adaptateur de serveur ou un framework web, suivez la procédure de déploiement habituelle de ce framework.

Avant de commencer
Lien direct vers Avant de commencer

Vous aurez besoin d'une application Mastra et d'un compte Digital Ocean.

L'App Platform utilise un système de fichiers éphémère. Tout stockage que vous configurez, y compris celui de l'observabilité, doit donc être hébergé à l'extérieur. Si vous utilisez LibSQLStore avec une URL de fichier, passez à une base de données hébergée à distance.

App Platform
Lien direct vers App Platform

Après avoir configuré votre projet, envoyez-le vers le fournisseur Git distant de votre choix, par exemple GitHub.

  1. Suivez le guide de démarrage rapide de l'App Platform. Il vous accompagnera pour connecter votre dépôt, choisir la branche à déployer et, si nécessaire, configurer le répertoire source.

  2. Vérifiez qu'un build « Node.js » est détecté. Vous devrez configurer une commande de build en fonction de votre gestionnaire de packages :

    npm run build
  3. Ajoutez toutes les variables d'environnement requises par votre application Mastra, notamment les clés d'API, les URL de bases de données et les autres valeurs de configuration.

  4. Votre application sera construite et déployée automatiquement. Digital Ocean vous fournira une URL permettant d'accéder à l'application déployée.

  5. Vous pouvez maintenant appeler vos endpoints Mastra via HTTP.

    attention

    Configurez l'authentification avant d'exposer publiquement vos endpoints.

Droplets
Lien direct vers Droplets

Prérequis
Lien direct vers Prérequis

  • Un Droplet exécutant Ubuntu 24.04 LTS ou une version ultérieure
  • Un nom de domaine dont l'enregistrement A pointe vers votre Droplet
  • Un proxy inverse configuré, par exemple avec nginx
  • Un certificat SSL configuré, par exemple avec Let's Encrypt
  • Node.js 22.13.0 ou une version ultérieure installé sur votre Droplet

Déployer
Lien direct vers Déployer

Après avoir configuré votre projet, envoyez-le vers le fournisseur Git distant de votre choix, par exemple GitHub. Connectez-vous à votre Droplet et vérifiez que git est installé.

  1. Clonez votre dépôt :

    git clone https://github.com/<your-username>/<your-repository>.git

    Accédez au répertoire du dépôt :

    cd "<your-repository>"
  2. Installez les dépendances du projet :

    npm install
  3. Définissez les variables d'environnement requises par votre application Mastra. Créez un fichier .env à la racine du projet :

    touch .env

    Modifiez le fichier .env et ajoutez vos variables d'environnement :

    .env
    OPENAI_API_KEY=your-api-key
  4. Construisez le projet :

    npm run build

    Cette commande crée un build de production du serveur Mastra dans le répertoire .mastra/output.

  5. Vous pouvez lancer le serveur Mastra en exécutant la commande mastra start :

    mastra start
    info

    Par défaut, votre application Mastra s'exécute sur le port 4111. Vérifiez que votre proxy inverse est configuré pour transférer les requêtes vers ce port.

  6. Vous pouvez maintenant appeler vos endpoints Mastra via HTTP.

    attention

    Configurez l'authentification avant d'exposer publiquement vos endpoints.