Add support for custom init scripts #167
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See #145
Add support for custom init scripts which can be mounted to
/docker-entrypoint.d/
directory.This will allow more easier, flexible and elegant customization. For example, to deploy a ZooKeeper cluster in Kubernetes, user can mount a custom init script to calculate
ZOO_MY_ID
for each instance.The idea and code is borrowed from official Nginx image.
There are two kinds of init scripts:
*.envsh
: environment script, it will be executed bysource
command, and can be used to export environment variables which will be visible todocker-entrypoint.sh
*.sh
: normal script, normally it should have a shebang to declare how to execute itNote:
.envsh
or.sh
will be ignoredzookeeper
userKubernetes example to mount a init script from ConfigMap: