运行 Metabase OSS JAR 文件
我们建议在 Metabase 云端版上运行 Metabase。如果您需要自托管,您*可以*将 Metabase 作为独立的 JAR 文件运行,但我们建议在 Docker 容器中运行 Metabase。
要通过 JAR 文件运行免费的 Metabase 开源版本,您需要在系统上安装 Java 运行时环境 (JRE)。
如果您有 Metabase 专业版或企业版的许可证令牌,请参阅激活您的 Metabase 商业许可证。
快速入门
快速入门旨在在本地运行 Metabase。有关在生产环境中运行 Metabase的说明,请参见下文。
如果您已安装 Java
- 下载 Metabase OSS 的 JAR 文件。如果您使用专业版或企业版计划,请下载企业版 JAR 文件。
- 创建一个新目录并将 Metabase JAR 文件移入其中。
- 进入您新的 Metabase 目录并运行 JAR 文件。
java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar
Metabase 将在启动时在终端中记录其进度。等到您看到“Metabase Initialization Complete”(Metabase 初始化完成)后,访问 http://localhost:3000/setup
。
如果您使用的是专业版或企业版 Metabase,请务必激活您的许可证。
本地安装
如果您只是想试用 Metabase,或者在本地机器上使用 Metabase,Metabase 附带一个默认的应用程序数据库供您使用。此设置不适用于生产环境。如果您打算在组织中实际运行 Metabase,请参阅生产环境安装。
以下说明与上述快速入门相同,只是每个步骤提供了更多上下文。
1. 安装 Java JRE
您可能已经安装了 Java。要检查版本,请打开终端并运行
java -version
如果未安装 Java,则需要先安装 Java 才能运行 Metabase。我们建议使用 Eclipse Temurin 提供的 JRE 21 版本和 HotSpot JVM。您可以在任何支持 Java 21 的地方运行 Metabase。不支持更早的 Java 版本。特定的处理器架构无关紧要(尽管我们只测试 x86 和 ARM 架构的 Metabase)。
2. 下载 Metabase
下载 JAR 文件
如果您想安装 Metabase 的专业版或企业版,请参阅激活您的 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 服务器,最可能在 http://localhost:3000
。
您可以通过在运行 JAR 文件之前设置 MB_JETTY_PORT
环境变量来使用 3000 以外的端口。
如果您使用的是 Metabase 专业版或企业版,请务必激活您的许可证。
生产环境安装
步骤与上述步骤类似,但有两个重要区别:如果您想在生产环境中运行 Metabase,您需要:
如果您更喜欢使用 Docker,请查看在 Docker 上运行 Metabase。
生产应用数据库
以下是一些我们支持的数据库,可用于存储您的 Metabase 应用程序数据。
例如,假设您想使用 PostgreSQL。您需要启动并运行 PostgreSQL 服务并创建一个空数据库
createdb metabaseappdb
您可以随意命名您的应用程序数据库。无需在该数据库中创建任何表;Metabase 将为您完成此操作。您只需设置 Metabase 在启动时使用的环境变量,以便 Metabase 知道如何连接到您创建的 metabaseappdb
。
您将为您的 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
上述命令将 Metabase 连接到您的 Postgres 数据库 metabaseappdb
,通过 localhost:5432
,使用用户帐户 username
和密码 password
。如果您将 Metabase 作为服务运行,您将把这些环境变量放入一个单独的配置文件中。
将 Metabase JAR 作为服务运行
如果您需要在生产环境中运行 JAR 文件,则应将 Metabase 作为服务运行。将 Metabase 作为服务运行将:
- 确保 Metabase 自动运行(并保持运行)。
- 允许您使用非特权用户运行 Metabase(这有利于安全性)。
如何将 Metabase 设置为服务的具体说明将因您的操作系统而异。有关如何将 Metabase 设置为服务的示例,请参阅在 Debian 上运行 Metabase。
迁移到生产环境安装
如果您一直使用默认的 H2 应用程序数据库运行 Metabase,并且您的团队已经创建了问题、仪表板、集合等,您需要将这些数据迁移到生产应用程序数据库。而且越早迁移越好。请参阅从 H2 数据库迁移。
故障排除
如果在安装过程中遇到任何问题,请查看我们的故障排除页面。
升级 Metabase
请参阅升级 Metabase。
设置 Metabase
现在您已经安装了 Metabase,是时候设置它并将其连接到您的数据库了。
阅读其他 Metabase 版本的文档。