GithubHelp home page GithubHelp logo

pfrayer / container-puppetdb Goto Github PK

View Code? Open in Web Editor NEW

This project forked from voxpupuli/container-puppetdb

0.0 0.0 0.0 443 KB

Container image for PuppetDB

License: Apache License 2.0

Shell 78.96% Ruby 5.31% Dockerfile 15.72%

container-puppetdb's Introduction

Voxpupuli PuppetDB container

CI License Donated by Puppet Sponsored by betadots GmbH



This project hosts the Dockerfile and the required scripts to build a PuppetDB container image.

For compose file see: CRAFTY

The PuppetDB 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 Dockerfile and supporting folders.

For more details about PuppetDB, see the official documentation.

New version schema

The new version schema has the following layout:

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

Example usage:

docker pull ghcr.io/voxpupuli/puppetdb:7.13.0-v1.2.1
Name Description
puppet.major Describes the contained major Puppet version (7 or 8)
puppet.minor Describes the contained minor Puppet version
puppet.patch Describes the contained patchlevel Puppet version
container.major Describes the major version of the base container (Ubunutu 22.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

puppetdb
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_PUPPETSERVER Set to false to skip acquiring SSL certificates from a Puppet Server.

true
PUPPETSERVER_HOSTNAME The DNS hostname of the puppet server

puppet
PUPPETSERVER_PORT The port of the puppet server

8140
PUPPETDB_POSTGRES_HOSTNAME The DNS hostname of the postgres service

postgres
PUPPETDB_POSTGRES_PORT The port for postgres

5432
PUPPETDB_POSTGRES_DATABASE The name of the puppetdb database in postgres

puppetdb
PUPPETDB_USER The puppetdb database user

puppetdb
PUPPETDB_PASSWORD The puppetdb database password

puppetdb
PUPPETDB_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
PUPPETDB_NODE_PURGE_TTL Automatically delete nodes that have been deactivated or expired for the specified amount of time

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

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

-Djava.net.preferIPv4Stack=true -Xms256m -Xmx256m -XX:+UseParallelGC -Xloggc:/opt/puppetlabs/server/data/puppetdb/logs/puppetdb_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

Transfer Notice

This project was originally authored by Puppet. The maintainer preferred that Vox Pupuli take ownership of the project for future improvement and maintenance. Existing pull requests and issues were transferred over, please fork and continue to contribute here.

container-puppetdb's People

Contributors

iristyle avatar rwaffen avatar nwolfe avatar austb avatar tuxmea avatar bastelfreak avatar zak-kent avatar rbrw avatar robdaemon avatar dependabot[bot] avatar ldaneliukas avatar anders-larsson avatar lutter avatar bschonec avatar bootc avatar dalen avatar jpartlow avatar mikaelsmith avatar donoghuc avatar j0sh3rs avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.