运行 Metabase OSS JAR 文件

我们建议在 Metabase Cloud 上运行 Metabase。如果您需要自托管,您*可以*将 Metabase 作为独立的 JAR 运行,但我们建议在 Docker 容器中运行 Metabase

要通过 JAR 文件运行免费的开源版本 Metabase,您的系统上需要安装 Java 运行时环境(JRE)。

如果您有 Metabase 的 Pro 或 Enterprise 版本的令牌,请参阅激活您的 Metabase 商业许可证

快速开始

快速开始旨在本地运行 Metabase。有关在生产环境中运行 Metabase的说明,请参见下文。

如果您已安装 Java

  1. 下载 Metabase OSS 的 JAR 文件。如果您使用的是 ProEnterprise 计划,请下载企业版的 JAR
  2. 创建一个新目录并将 Metabase JAR 移入其中。
  3. 进入您的新 Metabase 目录并运行 JAR。
java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar

Metabase 在启动时会在终端中记录其进度。等到您看到“Metabase Initialization Complete”后,访问 https://:3000/setup

如果您使用的是 Pro 或 Enterprise 版本,请务必激活您的许可证

本地安装

如果您只是想试用 Metabase、摆弄一下 Metabase,或者只是在本地计算机上使用 Metabase,Metabase 附带一个默认的应用程序数据库供您使用。此设置不适用于生产环境。如果您打算在您的组织中正式运行 Metabase,请参阅生产环境安装

以下说明与上面的快速开始相同,只是对每个步骤提供了更多上下文。

1. 安装 Java JRE

您可能已经安装了 Java。要检查版本,请打开终端并运行

java -version

如果未安装 Java,您需要先安装 Java 才能运行 Metabase。我们推荐使用来自 Eclipse Temurin 的 JRE 版本 21,并带有 HotSpot JVM。您可以在任何支持 Java 21 的地方运行 Metabase。不支持更早的 Java 版本。特定的处理器架构应该不重要(尽管我们只测试 Metabase 的 x86 和 ARM 架构)。

2. 下载 Metabase

下载 JAR 文件

如果您想安装 Metabase 的 Pro 或 Enterprise 版本,请参阅激活您的 Metabase 商业许可证

3. 创建一个新目录并将 Metabase JAR 移入其中

当您运行 Metabase 时,Metabase 会创建一些新文件,因此在运行之前将 Metabase Jar 文件放在一个新目录中非常重要(所以将其从您的下载文件夹中移出并放入一个新目录)。

在 posix 系统上,命令将如下所示

假设您下载到 /Users/person/Downloads

mkdir ~/metabase

然后

mv /Users/person/Downloads/metabase.jar ~/metabase

4. 进入您的新 Metabase 目录并运行 jar

进入您在第 2 步中创建的目录

cd ~/metabase

现在您已经让 Java 工作了,您可以从终端运行 JAR

java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar

Metabase 将使用默认设置启动。您应该会在终端窗口中看到一些日志条目开始运行,显示应用程序启动时的进度。一旦 Metabase 完全启动,您将看到一个确认,例如

...
06-19 10:29:34 INFO metabase.task :: Initializing task CheckForNewVersions
06-19 10:29:34 INFO metabase.task :: Initializing task SendAnonymousUsageStats
06-19 10:29:34 INFO metabase.task :: Initializing task SendAbandomentEmails
06-19 10:29:34 INFO metabase.task :: Initializing task SendPulses
06-19 10:29:34 INFO metabase.task :: Initializing task SendFollowUpEmails
06-19 10:29:34 INFO metabase.task :: Initializing task TaskHistoryCleanup
06-19 10:29:34 INFO metabase.core :: Metabase Initialization COMPLETE

此时您已经准备就绪!您可以在端口 3000 上访问您的新 Metabase 服务器,很可能在 https://:3000

您可以通过在运行 jar 之前设置 MB_JETTY_PORT 环境变量来使用 3000 以外的端口。

如果您使用的是 Metabase 的 Pro 或 Enterprise 版本,请务必激活您的许可证

生产环境安装

步骤与上述步骤类似,但有两个重要区别:如果您想在生产环境中运行 Metabase,您需要:

如果您更喜欢使用 Docker,请查看在 Docker 上运行 Metabase

生产应用程序数据库

以下是我们支持的一些数据库

例如,假设您想使用 PostgreSQL。您需要启动并运行一个 PostgreSQL 服务并创建一个空数据库

createdb metabaseappdb

您可以随意命名您的应用程序数据库。并且不需要在该数据库中创建任何表;Metabase 会为您完成。您只需要为 Metabase 设置环境变量,以便 Metabase 在启动时知道如何连接到这个数据库。

您将像本地安装中列出的步骤一样为 Metabase 创建一个目录,但是在运行 java --add-opens java.base/java.nio=ALL-UNNAMED -jar 命令来启动 JAR 时,您将在命令前加上一些环境变量,以告知 Metabase 如何连接到您创建的 metabaseappdb

export MB_DB_TYPE=postgres
export MB_DB_DBNAME=metabaseappdb
export MB_DB_PORT=5432
export MB_DB_USER=username
export MB_DB_PASS=password
export MB_DB_HOST=localhost
java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar

上述命令将通过 localhost:5432 使用用户帐户 username 和密码 password 将 Metabase 连接到您的 Postgres 数据库 metabaseappdb。如果您将 Metabase 作为服务运行,您需要将这些环境变量放在一个单独的配置文件中。

将 Metabase JAR 作为服务运行

如果您需要在生产环境中运行 JAR,您应该将 Metabase 作为服务运行。将 Metabase 作为服务运行将:

  • 确保 Metabase 自动运行(并保持运行)。
  • 允许您使用非特权用户运行 Metabase(这对于安全是好的)。

如何将 Metabase 作为服务运行的具体说明将因您的操作系统而异。有关如何将 Metabase 设置为服务的示例,请查看在 Debian 上运行 Metabase

迁移到生产安装

如果您一直在使用默认的 H2 应用程序数据库运行 Metabase,并且您的团队已经创建了问题、仪表盘、集合等,您需要将这些数据迁移到生产应用程序数据库。而且越早越好。请参阅从 H2 数据库迁移

故障排除

如果您在安装过程中遇到任何问题,请查看我们的故障排除页面

升级 Metabase

请参阅升级 Metabase

设置 Metabase

现在您已经安装了 Metabase,是时候设置它并将其连接到您的数据库了。

阅读其他版本的 Metabase 的文档。

这有帮助吗?

感谢您的反馈!
想改进这些文档吗?提出更改建议。
© . This site is unofficial and not affiliated with Metabase, Inc.