Skip to content

OpenVoxProject/container-openvoxdb

OpenVox DB container

CI License Sponsored by betadots GmbH



This project hosts the Containerfile and the required scripts to build a OpenVoxDB container image.

For compose file see: CRAFTY

The OpenVoxDB container requires a working postgres container or other suitably configured PostgreSQL database. For a Compose example see the CRAFTY OSS Demo compose.yaml

You can change configuration settings by mounting volumes containing configuration files or by using this image as a base image. For the defaults, see the Containerfile and supporting folders.

Version schema

The version schema has the following layout:

<openvox.major>.<openvox.minor>.<openvox.patch>-v<container.major>.<container.minor>.<container.patch>

Example usage:

podman pull ghcr.io/openvoxproject/openvoxdb:8.9.0-v1.2.3
Name Description
openvox.major Describes the contained major OpenVox version (7 or 8)
openvox.minor Describes the contained minor OpenVox version
openvox.patch Describes the contained patchlevel OpenVox version
container.major Describes the major version of the base container (Ubunutu 24.04) or incompatible changes
container.minor Describes new features or refactoring with backward compatibility
container.patch Describes if minor changes or bugfixes have been implemented

Configuration

Name Usage / Default
CERTNAME The DNS name used on this services SSL certificate

openvoxdb
DNS_ALT_NAMES Additional DNS names to add to the services SSL certificate

Unset
WAITFORCERT Number of seconds to wait for certificate to be signed

120
USE_OPENVOXSERVER Set to false to skip acquiring SSL certificates from a Puppet Server.

true
OPENVOXDB_CERTIFICATE_ALLOWLIST Set to a comma seaprated list of allowed certnames.

""
OPENVOXSERVER_HOSTNAME The DNS hostname of the puppet server

puppet
OPENVOXSERVER_PORT The port of the puppet server

8140
OPENVOXDB_POSTGRES_HOSTNAME The DNS hostname of the postgres service

postgres
OPENVOXDB_POSTGRES_PORT The port for postgres

5432
OPENVOXDB_POSTGRES_DATABASE The name of the openvoxdb database in postgres

openvoxdb
OPENVOXDB_POSTGRES_USER The openvoxdb database user

openvoxdb
OPENVOXDB_POSTGRES_PASSWORD The openvoxdb database password

openvoxdb
OPENVOXDB_NODE_TTL Mark as ‘expired’ nodes that haven’t seen any activity (no new catalogs, facts, or reports) in the specified amount of time

7d
OPENVOXDB_NODE_PURGE_TTL Automatically delete nodes that have been deactivated or expired for the specified amount of time

14d
OPENVOXDB_REPORT_TTL Automatically delete reports that are older than the specified amount of time

14d
OPENVOXDB_JAVA_ARGS Arguments passed directly to the JVM when starting the service

-Djava.net.preferIPv4Stack=true -Xms256m -Xmx256m -XX:+UseParallelGC -Xlog:gc*:file=$LOGDIR/openvoxdb_gc.log -Djdk.tls.ephemeralDHKeySize=2048
LOGDIR Path of the log directory

/opt/puppetlabs/server/data/puppetdb/logs
SSLDIR Path of the SSL directory

/opt/puppetlabs/server/data/puppetdb/certs

Cert File Locations

The directory structure follows the following conventions. The full path is always available inside the container as the environment variable $SSLDIR

  • 'ssl-ca-cert' /opt/puppetlabs/server/data/puppetdb/certs/certs/ca.pem

  • 'ssl-cert' /opt/puppetlabs/server/data/puppetdb/certs/certs/<certname>.pem

  • 'ssl-key' /opt/puppetlabs/server/data/puppetdb/certs/private_keys/<certname>.pem

Initialization Scripts

If you would like to do additional initialization, add a directory called /docker-custom-entrypoint.d/ and fill it with .sh scripts. These scripts will be executed at the end of the entrypoint script, before the service is ran.

How to Release the container

see here

How to contribute

see here

About

Container builds for the OpenVox DB

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •