DrRemote DB provides PostgreSQL and SQLite database layers for DrRemote as a modular OSGi/Karaf repository.
It contains:
- a PostgreSQL core bundle for JDBC access, transactions, and migrations
- a SQLite core bundle for file-based JDBC access, transactions, and migrations
- Karaf features modules for simple runtime installation
This repository is intended for modular Java applications running in OSGi/Karaf that need reusable database integration layers for PostgreSQL or SQLite.
The database cores provide:
- JDBC-based database access
- transaction handling via
TransactionManager - a HikariCP-backed
DataSource - lightweight query helpers
- plugin migrations
- centralized migration tracking
The PostgreSQL core bundle.
Provides:
- PostgreSQL connectivity
- pooled
DataSource - transaction support
- query execution helpers
- plugin migration support
The Karaf features module.
Provides:
-
a Karaf feature descriptor
-
runtime provisioning of:
- PostgreSQL JDBC driver
- HikariCP
- the DrRemote PostgreSQL core bundle
The SQLite core bundle.
Provides:
- SQLite connectivity
- pooled
DataSource - transaction support
- query execution helpers
- plugin migration support
The Karaf features module.
Provides:
-
a Karaf feature descriptor
-
runtime provisioning of:
- SQLite JDBC driver
- HikariCP
- the DrRemote SQLite core bundle
- Java 21
- Apache Karaf or another OSGi runtime
- PostgreSQL
- PostgreSQL JDBC driver available in the runtime
- HikariCP available in the runtime
psqlavailable onPATHfor script-based migrations- SQLite JDBC driver available in the runtime
Build the complete repository with:
mvn clean installPublished artifacts:
- Bundle:
de.drremote.db:postgresql - Feature:
de.drremote.db:postgresql-features - Bundle:
de.drremote.db:sqlite - Feature:
de.drremote.db:sqlite-features
Karaf feature name:
de.drremote-db-postgresqlde.drremote-db-sqlite
Current workspace version:
1.0.0-SNAPSHOT
Add the features repository:
feature:repo-add mvn:de.drremote.db/postgresql-features/1.0.0-SNAPSHOT/xml/featuresInstall the feature:
feature:install de.drremote-db-postgresqlSQLite:
Add the features repository:
feature:repo-add mvn:de.drremote.db/sqlite-features/1.0.0-SNAPSHOT/xml/featuresInstall the feature:
feature:install de.drremote-db-sqliteThe PostgreSQL core is configured through the ConfigAdmin PID:
de.drremote.db.postgresql
Recommended configuration file:
$KARAF_HOME/etc/de.drremote.db.postgresql.cfg
For a full configuration example, see:
docs/configuration-postgresql.md
The SQLite core is configured through the ConfigAdmin PID:
de.drremote.db.sqlite
Recommended configuration file:
$KARAF_HOME/etc/de.drremote.db.sqlite.cfg
Repository documentation:
docs/configuration-postgresql.md— PostgreSQL configurationdocs/configuration-sqlite.md— SQLite configurationdocs/usage-postgresql.md— PostgreSQL usage examplesdocs/usage-sqlite.md— SQLite usage examplesde.drremote.db.postgresql/README.md— module-level documentationde.drremote.db.sqlite/README.md— module-level documentation
db/
├─ pom.xml
├─ README.md
├─ LICENSE
├─ docs/
│ ├─ configuration.md
│ └─ usage.md
├─ de.drremote.db.postgresql/
├─ de.drremote.db.postgresql.features/
├─ de.drremote.db.sqlite/
└─ de.drremote.db.sqlite.features/
- Configuration examples use placeholder credentials.
- Do not use example passwords unchanged in production.
- The current Maven project version in this repository is
1.0.0-SNAPSHOT. Use that version infeature:repo-adduntil a release artifact is published. - This repository is functional, but not yet production-hardened.
Licensed under Apache-2.0. See LICENSE.