Public | Automated Build

Last pushed: a year ago
Short Description
This image is the base for all the initialisation docker containers.
Full Description

This image is the base for all the initialisation docker containers.

#How to use this image?

You can use the this image by copying your initialization script

FROM almanacproject/init_base
COPY init_script ./
RUN chmod +x ./init_script
CMD ["./init_script"]

##What is in the init script?

Inside the init script you can crate everything you need to your service to function properly, but can not be include inside the container image.

For example

  • certificates
  • passwords
  • deployment depending configurations

The init script could look something like this shell script.

#!/bin/sh

set -e

mkdir -p -- /opt/volumes/service/
cd /opt/volumes/service

printf "Init Certificates and passwords.\n"
passwords="$(psst /opt/input/config.json)"
certs="$(bob /opt/input/config.json)"
printf '{"psst": %s, "bob": %s}\n' "$passwords" "$certs" > ./init.json

printf "Create config file.\n"
rework /opt/input/service/config.yml.template < ./init.json > ./config.yml

This example creates the certificate, the truststore, and passwords for this fictive service with the utilities bob and psst.
The certificate and the trust store will be saved in /opt/volumes/service.
To use psst and bob you have to create a configuration file, which in the example here is called config.json under the volume /opt/input.

In addition you can use the utility rework to create a new configuration file out of an template file.

rework, bob, and psst are include in this image.
Further documentation can be found under

Docker Pull Command
Owner
almanacproject
Source Repository