raintank / raintank-docker

raintank docker images and dev stack DEPRECATED / UNMAINTAINED
https://blog.raintank.io/docker-based-development-environment/
16 stars 4 forks source link

refactor to run containers as executables #74

Closed woodsaj closed 8 years ago

woodsaj commented 8 years ago

This change removes supervisord from a bunch of images and instead runs each container as an executable.

This has a lot of added benefits

1) execution of the binaries is wrapped by wait.sh, so that you can just pass a comma separated list of host:ports to wait for before starting the executable via environment variable "WAIT_HOSTS". 2) after modifying code and rebuilding you just need to restart the container. eg docker restart raintank_eventtank_1 3) The images should just work outside of the raintank-docker environment. Moving forward i would like split containers up over a few different docker-compose configs (fig.yaml). So for example, you could just bring up the stack without the benchmark tools running. 4) For each file in the "screens" directory, if the file begins with an underscore "_", then the commands are run on the host and not in a shell of the container.

down side

1) logs are now only accesable via docker logs -f raintank_eventtank_1 which is only a problem if you want to grep across all logs for something. This of course can be addressed easily enough by just changing the screens command to something like docker logs -f raintank_eventtank_1 |tee logs/eventtank.log

woodsaj commented 8 years ago

this commit also completely removes NSQ

woodsaj commented 8 years ago

@Dieterbe how do you feel about this?

Dieterbe commented 8 years ago
woodsaj commented 8 years ago
From raintank/metrictank
COPY raintank-docker-config.ini /etc/raintank/metrictank.ini