Visión general de los servicios
Las bases de datos, cachés, servidores de correo y motores de búsqueda que Joppa ejecuta en contenedores, y cómo añadirlos.
Un servicio es un servidor compartido por tus proyectos, que Joppa ejecuta en tu runtime de contenedores. Abre Servicios en la barra lateral: la página lista tus servicios y luego el catálogo.

El catálogo
| Servicio | Versiones | Puerto por defecto | Cuenta o clave |
|---|---|---|---|
| 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, buzón web 8025 | — |
| Typesense | 30.2, 29.1 | 8108 | clave API joppa-local-key-0000 |
| Meilisearch | 1.55, 1.54 | 7700 | clave maestra joppa-local-key-0000 |
La primera versión de la lista es la que se propone por defecto.
Añadir un servicio
Haz clic en + Añadir PostgreSQL (u otro) en el catálogo. Elige la versión y el puerto: Joppa propone el primer puerto libre a partir del puerto por defecto (un segundo servidor MySQL tomará el 3307). El servicio se inicia en un contenedor llamado joppa-<motor>.
Todos los servicios escuchan solo en 127.0.0.1: no son visibles desde la red.
La página de un servicio
- Iniciar / Detener, y desde cuándo está en marcha.
- Copiar URL del servidor (o la dirección, la clave API o la clave maestra según el servicio).
- Abrir en TablePlus para las bases de datos y las cachés, Abrir buzón para Mailpit, Abrir vista previa para Meilisearch.
- Proyectos: los proyectos que lo usan, Conectar un proyecto y Desvincular. Joppa escribe la dirección del servicio en su
.envy la mantiene al día. - registro: los logs del contenedor, con Seguir.
- Menú Acciones: Versión y puerto… (o Versión, puerto y extensiones… para PostgreSQL) y Quitar el servicio….

Cambiar de versión o de puerto
Los cambios se aplican en el próximo inicio; la página propone ↻ Aplicar los cambios (el contenedor se recrea, los datos se conservan).
- Cada versión tiene sus propios datos, en un volumen (
joppa-postgres-17). Pasar de la 17 a la 18 inicia un servidor vacío; volver a la 17 recupera sus bases de datos. - Cambiar de puerto actualiza el
.envde los proyectos vinculados.
Quitar un servicio
Quitar el servicio… elimina el contenedor. Los datos se quedan en su volumen: al volver a añadir el mismo servicio se recuperan.
Puerto ocupado
Si el puerto ya está ocupado, la página muestra «✕ El puerto 5432 está ocupado por …» con dos opciones: Cambiar de puerto o Liberar el puerto. Joppa identifica al culpable y propone la acción adecuada:
| Ocupante | Acción propuesta |
|---|---|
| Contenedor Docker, Compose o Lerd | Detenerlo |
| Servicio de Homebrew | brew services stop … (ya no se iniciará al abrir sesión) |
| Postgres.app | Imposible desde Joppa: haz clic en «Stop» en Postgres.app |
| Otro proceso | Detenerlo directamente, previa confirmación |