Services

Vue d'ensemble des services

Les bases de données, caches, serveurs mail et moteurs de recherche que Joppa fait tourner dans des conteneurs, et comment les ajouter.

Un service est un serveur partagé par vos projets, que Joppa fait tourner dans votre runtime de conteneurs. Ouvrez Services dans la barre latérale : la page liste vos services, puis le catalogue.

La page Services : vos services en marche et le catalogue

Le catalogue

Service Versions Port par défaut Compte ou clé
PostgreSQL 18, 17, 16, 15, 14 5432 postgres / postgres
MySQL 9.7, 8.4, 8.0 3306 root / root
MariaDB 12.3, 11.8, 11.4, 10.11 3306 root / root
Redis 8.10, 8.8, 7.4 6379 —
Valkey 9.2, 9.1, 8.1 6379 —
Mailpit 1.31 SMTP 1025, boîte web 8025 —
Typesense 30.2, 29.1 8108 clé API propre au serveur (joppa-…)
Meilisearch 1.55, 1.54 7700 clé maître propre au serveur (joppa-…)

La première version listée est celle proposée par défaut.

Ajouter un service

Cliquez sur + Ajouter PostgreSQL (ou un autre) dans le catalogue. Choisissez la version et le port : Joppa propose le premier port libre à partir du port par défaut (un MariaDB ajouté à côté d’un MySQL prendra 3307). Le service démarre dans un conteneur nommé joppa-<moteur>.

Tous les services écoutent sur 127.0.0.1 seulement : ils ne sont pas visibles depuis le réseau.

Version gratuite et Joppa Pro

La version gratuite comprend PostgreSQL (avec ses extensions), MySQL, MariaDB et Mailpit, un serveur de chaque. Redis, Valkey, Typesense et Meilisearch portent un badge Pro dans la liste des services à ajouter, et plusieurs serveurs d’un même moteur (deux PostgreSQL, par exemple) demandent aussi Joppa Pro. L’import et l’export des bases sont gratuits ; leurs instantanés demandent Joppa Pro.

En version gratuite, ouvrir l’un d’eux affiche un message et l’enregistrement est désactivé, avec Voir Joppa Pro :

  • « Redis est inclus dans Joppa Pro. La version gratuite comprend PostgreSQL, MySQL, MariaDB et Mailpit. »
  • « La version gratuite comprend un seul serveur PostgreSQL. Passez à Joppa Pro pour en ajouter. »

La page d’un service

  • Démarrer / Arrêter, et depuis combien de temps il tourne.
  • Copier l’URL du serveur (ou l’adresse, la clé API, la clé maître selon le service).
  • Ouvrir dans TablePlus pour les bases et les caches, Ouvrir la boîte pour Mailpit, Ouvrir l’aperçu pour Meilisearch.
  • Projets : les projets qui l’utilisent, Connecter un projet et Délier. Joppa écrit l’adresse du service dans leur .env et la garde à jour.
  • Ressources : CPU, mémoire, réseau et disque du conteneur, relevés toutes les 5 s tant que la page est ouverte, avec la courbe des cinq dernières minutes. 100 % de CPU, c’est un cœur entier.
  • journal : les logs du conteneur sur toute la largeur, avec Suivre.
  • Menu Actions : Version et port… (ou Version, port et extensions… pour PostgreSQL) et Retirer le service….

La page de PostgreSQL 18 : état, extensions du serveur, ressources, journal et bases des projets

Changer de version ou de port

Les changements s’appliquent au prochain démarrage ; la page propose ↻ Appliquer les changements (le conteneur est recréé, les données restent).

  • Chaque version a ses propres données, dans un volume (joppa-postgres-17). Passer de la 17 à la 18 démarre un serveur vide ; revenir à la 17 retrouve ses bases.
  • Changer de port met à jour le .env des projets liés.

Retirer un service

Retirer le service… supprime le conteneur. Les données restent dans leur volume : réajouter le même service les retrouve.

Port occupé

Si le port est déjà pris, la page affiche « ✕ Le port 5432 est occupé par … » avec deux options : Changer de port, ou Libérer le port. Joppa identifie le coupable et propose l’action adaptée :

Occupant Action proposée
Conteneur Docker, Compose ou Lerd L’arrêter
Service Homebrew brew services stop … (il ne redémarrera plus à l’ouverture de session)
Postgres.app Impossible depuis Joppa : cliquez sur « Stop » dans Postgres.app
Autre processus L’arrêter directement, après confirmation
getjoppa.com › support

Chargement

Ça ne passe pas ? Écrivez à [email protected]. Une simple question : [email protected].