服务

服务概览

Joppa 在容器中运行的数据库、缓存、邮件服务器和搜索引擎,以及如何添加它们。

服务是由你的项目共享的服务器,Joppa 在你的 容器运行时 中运行它。在侧边栏中打开 服务:页面会先列出你的服务,然后是服务目录。

服务页面:正在运行的服务和服务目录

服务目录

服务 版本 默认端口 账号或密钥
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,网页收件箱 8025 —
Typesense 30.2、29.1 8108 服务器专属的 API 密钥(joppa-…)
Meilisearch 1.55、1.54 7700 服务器专属的主密钥(joppa-…)

列出的第一个版本即默认提供的版本。

添加服务

在服务目录中点击 + 添加 PostgreSQL(或其他服务)。选择版本和端口:Joppa 会从默认端口开始推荐第一个空闲端口(在 MySQL 旁再添加一个 MariaDB 会使用 3307)。服务会在名为 joppa-<engine> 的容器中启动。

所有服务都只监听 127.0.0.1:网络上的其他设备看不到它们。

免费版与 Joppa Pro

免费版包含 PostgreSQL(含扩展)、MySQL、MariaDB 和 Mailpit,每种一个服务器。在可添加的服务列表中,Redis、Valkey、Typesense 和 Meilisearch 带有 Pro 标记;同一引擎的多个服务器(例如两个 PostgreSQL)同样需要 Joppa Pro。数据库的导入和导出是免费的;其快照需要 Joppa Pro。

在免费版中打开它们时,会显示一条提示,无法保存,并提供 了解 Joppa Pro:

  • “Redis 包含在 Joppa Pro 中。免费版包含 PostgreSQL、MySQL、MariaDB 和 Mailpit。”
  • “免费版只包含一个 PostgreSQL 服务器。升级到 Joppa Pro 即可添加更多。”

服务页面

  • 启动 / 停止,以及已运行多长时间。
  • 复制服务器 URL(根据服务不同,也可能是地址、API 密钥或主密钥)。
  • 数据库和缓存可 在 TablePlus 中打开,Mailpit 可 打开收件箱,Meilisearch 可 打开预览。
  • 项目:使用该服务的项目,以及 连接项目 和 取消关联。Joppa 会把服务地址写入这些项目的 .env,并保持更新。
  • 资源:容器的 CPU、内存、网络和磁盘,页面打开时每 5 秒采样一次,并显示最近五分钟的曲线。CPU 100% 即一个完整核心。
  • 日志:通栏显示的容器日志,可开启 跟随。
  • 操作 菜单:版本和端口…(PostgreSQL 为 版本、端口和扩展…)以及 移除服务…。

PostgreSQL 18 页面:状态、服务器扩展、资源、日志和各项目的数据库

更换版本或端口

更改会在下次启动时生效;页面会提供 ↻ 应用更改(容器会被重新创建,数据保留)。

  • 每个版本都有自己的数据,保存在一个卷中(joppa-postgres-17)。从 17 切换到 18 会启动一个空的服务器;切回 17 即可找回其数据库。
  • 更换端口 会更新已关联项目的 .env。

移除服务

移除服务… 会删除容器。数据保留在其卷中:重新添加同一服务即可找回。

端口被占用

如果端口已被占用,页面会显示「✕ 端口 5432 被 … 占用。」并提供两个选项:更换端口 或 释放端口。Joppa 会找出占用者并提供相应的操作:

占用者 提供的操作
Docker 容器、Compose 或 Lerd 停止它
Homebrew 服务 brew services stop …(登录时将不再自动启动)
Postgres.app 无法在 Joppa 中操作:请在 Postgres.app 中点击“Stop”
其他进程 确认后直接停止它
getjoppa.com › support

加载中

发送不了?请写信至 [email protected]。只是简单的问题:[email protected]。