【问题标题】:Use Metabase on Ubuntu Service在 Ubuntu 服务上使用元数据库
【发布时间】:2016-09-29 12:09:27
【问题描述】:

我尝试创建一个 Ubuntu Upstart Service to Metabase,但在解决以下问题时遇到了问题:

1) 设置数据库环境变量(端口、ip和密码):

MB_DB_TYPE=mysql
MB_DB_DBNAME=metabase
MB_DB_PORT=3306
MB_DB_USER=root
MB_DB_PASS=root
MB_DB_HOST=99.99.999.99

2) 如果服务失败则重启服务

3) 开机启动

4) 执行元数据库.jar 程序

`java -jar metabase.jar`

【问题讨论】:

  • 如果解决方案使用 systemd 管理 Metabase 服务有什么问题吗?

标签: ubuntu upstart metabase


【解决方案1】:

有一个三步指南可确保您的元数据库使用 systemd (https://en.wikipedia.org/wiki/Systemd) 在 Ubuntu 中作为服务运行。

1) 在以下文件夹/usr/lib/systemd/system/ 中创建文件metabase.service(您可能需要创建系统文件夹)

[Unit]
Description=Metabase server

[Service]
User=<deploy user>
Restart=on-failure
Environment=MB_DB_TYPE=postgres
Environment=MB_DB_DBNAME=metabase
Environment=MB_DB_PORT=5432
Environment=MB_DB_USER=<db_user>
Environment=MB_DB_PASS=<db_password>
Environment=MB_DB_HOST=<host>
ExecStart=/usr/bin/java -jar /path/to/metabase.jar

[Install]
WantedBy=multi-user.target

2) 启用元数据库服务

sudo systemctl enable metabase.service

3) 启动服务(您的 Metabase 服务将在 3000 端口可用)

sudo systemctl start metabase.service

要检查服务是否正在运行,请尝试: sudo systemctl status metabase.service

【讨论】:

  • 很高兴能得到反对意见的反馈 :)
  • 我已按照上面给出的相同配置使其与插件目录中提供的 oracle 数据库提供的 oracle 驱动程序 jar 一起使用
  • 它对我不起作用。但是,官方文档的配置有效:metabase.com/docs/latest/operations-guide/…。它还解释了如何设置 Nginx 代理。
【解决方案2】:

我最近写了一篇关于如何在 Ubuntu 上设置元数据库的tutorial,有关该过程的更详细描述,我建议您看一下。鉴于您提供的信息,我会尽力帮助您。

第一步:服务配置文件

有两种方法可以将 Java 应用程序设置为服务;但是,我将探讨元数据库的documentation 中提到的那个。对于他们推荐的方法,您需要设置两个配置文件:

  1. /etc/init.d/metabase
  2. /etc/default/metabase

您可以根据提供的元数据库文档设置这些文件。注意:我需要对 init.d 进行一些更改,以便在服务执行 java -jar 之前导入配置变量,如果您有兴趣,可以在我上面的博客中找到更多详细信息。

第二步:设置代理

之后,您需要设置代理,以便服务器知道如何将流量重定向到端口 3000,以便激活元数据库。 (同样,有关如何执行此操作的说明可以在我的博客中找到。)

第三步:设置元数据库即服务

chmod +x /etc/init.d/metabase
touch /var/log/metabase
chown metabase_user:<group> /var/log/metabase.log
update-rc.d metabase defaults

请注意,元数据库必须有权写入日志文件,否则您将尝试盲目部署。

我要检查的其他事项:

  1. 确保您在99.99.999.99:3306 上使用的端口允许您尝试进行的连接(http、https 或 ssh)。
  2. 确保 www-data/metabase_user 有权执行 metabase.jar 文件。如果不是,当您sudo service metabase start 时服务将无法启动元数据库

我希望这会有所帮助,如果您想了解有关任何步骤的更多详细信息,请查看:https://codymyers93.wordpress.com/2018/05/07/metabase-on-ubuntu-with-flask-integration/

如有任何问题,请随时给我发消息。

【讨论】:

    猜你喜欢
    • 2013-02-17
    • 1970-01-01
    • 2011-06-22
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-27
    • 2018-10-08
    相关资源
    最近更新 更多