Sign inSign up

doccom/pentaho-bi-server-ce

By doccom

Updated about 7 years ago

Pentaho Bi Server CE for docker, also contains Athena JDBC Driver

Image
1

1.6K

doccom/pentaho-bi-server-ce repository overview

Pentaho BI Server

This project contains a Docker Image for deploying Pentaho BI Server with Tomcat and also contains the AthenaJDBC driver to enable connections to Amazon Athena

###How to run this image

$ docker run --name my-bi-server -p 8080:8080 -d pentaho-server:tag

!!!!!!!!!!!!!!!!!!!!!!!!!!IMPORTANT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

When using a custom db environment it's necessary to create the db users, tables and schemas that Pentaho needs. You can find the PostgreSQL scripts in the postgresql-db-scripts directory. For other database engines you can find the corresponding scripts within the Pentaho Community Edition distribution, under /pentaho-server/data

For postgresql just run create_quartz_postgresql.sql,create_repository_postgresql.sql and create_jcr_postgresql.sql on your Postgresql DB instance

!!!!!!!!!!!!!!!!!!!!!!!!!!IMPORTANT!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

By default Pentaho Server uses the file-system repository but you can change it to one of the supported databases.

Here you can find the specific setup steps for each type of database:

  • [PostgreSQL][PSQL]
  • [MySQL][MSQL]
  • [Oracle][ORCL]
  • [MS SQL Server][MSSQL]

Make sure that your db repository is up and running and has the necessary schemas, then you basically need to edit three files to specify your custom connections

You can find a copy of the configuration files on this [repo][PDBCONF], download them and edit them with your own connections

##For a PostgreSQL repository:

###Step 1: Set up Quartz on PostgreSQL Event information, such as scheduled reports, is stored in the Quartz JobStore. During the installation process, you must indicate where the JobStore is located by modifying the quartz.properties file.

Open quartz.properties file in any text editor. Locate the #_replace_jobstore_properties section and set the org.quartz.jobStore.driverDelegateClass as shown:

- 1 | org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate

Locate the # Configure Datasources section and set the org.quartz.dataSource.myDS.jndiURL equal to Quartz, as shown:

- 1 | org.quartz.dataSource.myDS.jndiURL = Quartz

Save the file and close the text editor.

Step 2: Modify Jackrabbit repository information for PostgreSQL

Edit the following code to change the default Jackrabbit repository to PostgreSQL.

Open the repository.xml file with any text editor.

As shown in the table below, locate and verify or change the code so that the PostgreSQL lines are not commented out, but the MySQL, Oracle, and MS SQL Server lines are commented out.

Caution : If you have a different port or different password, make sure that you change the password and port number in these examples to match the ones in your configuration.

ItemCode Section
Repository
1<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
2    <param name="driver" value="org.postgresql.Driver"/>
3    <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
4    ...
5  </FileSystem>
DataStore
1<DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
2    <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
3    ...
4  </DataStore>
Workspaces
1<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
2      <param name="driver" value="org.postgresql.Driver"/>
3      <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
4     ...
5    </FileSystem>
PersistenceManager (1st part)
1<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
2      <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
3      ...
4      <param name="schemaObjectPrefix" value="${wsp.name}_pm_ws_"/>
5</PersistenceManager>
Versioning
1<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
2      <param name="driver" value="org.postgresql.Driver"/>
3      <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
4     ...
5    </FileSystem>
PersistenceManager (2nd part)
1<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
2      <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
3      ...
4      <param name="schemaObjectPrefix" value="pm_ver_"/>
5</PersistenceManager>
DatabaseJournal
01<Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
02    <param name="revision" value="${rep.home}/revision.log"/>
03    <param name="url" value="jdbc:postgresql://localhost:5432/jackrabbit"/>
04    <param name="driver" value="org.postgresql.Driver"/>
05    <param name="user" value="jcr_user"/>
06    <param name="password" value="password"/>
07    <param name="schema" value="postgresql"/>
08    <param name="schemaObjectPrefix" value="cl_j_"/>
09    <param name="janitorEnabled" value="true"/>
10    <param name="janitorSleep" value="86400"/>
11    <param name="janitorFirstRunHourOfDay" value="3"/>
12</Journal>

##Step 3: Modify JDBC connection information in the Tomcat context.xml File Database connection and network information, such as the username, password, driver class information, IP address or domain name, and port numbers for your Pentaho Repository database are stored in the context.xml file.

Modify this file to reflect the database connection and network information to reflect your operating environment.

If you have chosen to use an Pentaho Repository database other than PostgreSQL, you also need to modify the values for the validationQuery parameters in this file.

Caution : If you have a different port, password, user, driver class information, or IP address, make sure that you change the password and port number in these examples to match the ones in your configuration environment. Consult your database documentation to determine the JDBC class name and connection string for yourPentaho Repository database.

  • Open the context.xml file with any text editor.

  • Add the following code to the file if it does not already exist.

1<Resource name="jdbc/Hibernate" auth="Container" type="javax.sql.DataSource" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" initialSize="0" maxActive="20" maxIdle="10" maxWait="10000" username="hibuser" password="password" driverClassName="org.postgresql.Driver" url="jdbc:postgresql://localhost:5432/hibernate" validationQuery="select 1"/>
2<Resource name="jdbc/Audit" auth="Container" type="javax.sql.DataSource" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" initialSize="0" maxActive="20" maxIdle="10"

Tag summary

Content type

Image

Digest

Size

2.7 GB

Last updated

about 7 years ago

docker pull doccom/pentaho-bi-server-ce