在Ubuntu服务上使用Metabase

时间:2016-09-29 12:09:27

标签: ubuntu upstart metabase

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

1)设置数据库环境变量(port,ip和password):

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`

2 个答案:

答案 0 :(得分:2)

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

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

[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

答案 1 :(得分:1)

我最近写了一篇关于如何在Ubuntu上设置配置数据库的tutorial,有关该流程的更详细说明,我建议您仔细阅读。鉴于您提供的信息,我会尽力帮助您。

第一步:服务配置文件

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

  1. /etc/init.d/metabase
  2. 的/ etc /默认/元数据库
  3. 您可以根据提供的配置数据库文档设置这些文件。注意:我需要对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
    3. 时,服务将无法启动配置数据库

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

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