Provide a Dockerfile
Many projects include a Dockerfile which allows other folks to quickly run the project in a controlled environment.
Provide one for this project.
Tasks:
- select base OS.
- discover system packages which are required for this package to run.
- define setup process.
- provide working examples (copy-n-paste-ready) of this package in action.
- if API keys or authentication tokens, etc are required, then provide detailed instructions on how to acquire them, and where they should be applied for a successful run of this software.
+1 Dockerfile would make it much better.
I hardly understand why one would use a docker container for this project since you have to store logs in your hdd (not the container's one) and process them not in real time, so after the execution. So, just starting with this, we are allocating memory, cpu and resources in general, for nothing more.
By the way, I made a couple of docker containers: pielco11/zzzzz:original and pielco11/zzzzz:es. The first one is the original repo, to use it do:
-
docker pull pielco11/zzzzz:original -
docker run -v /full/path/to/SECRETS.txt:/zzzzz/SECRETS.txtpielco11/zzzzz:original - to watch the log: first find the container id of the corresponding image with
docker container lsand than rundocker logs -f.
The second one is a more interesting one with a little sense of existence. It requires elasticsearch and nothing less than kibana. Why them? Just look in my fork, there you'll see (for every question don't hesitate to ask). I decided to use the default networking mode (bridge) so what you will have to do is:
-
docker pull pielco11/zzzzz:es; - Open
$elasticsearch_home_path/config/elasticsearch.ymland addnetwork.host: 127.0.0.1andhttp.host: 0.0.0.0, so that elasticsearch will expose its APIs over http and let them accessible from "everywhere"; - Run
ifconfigand look fordocker, if you have moredockerinterfaces (docker1,docker2,...) and don't know what to use just rundocker run --rm -it ubuntu:trusty bash -iland thanrouteand look forGateway(since every container is running, by default, with bridge net mode, the gateway is one, and is your interface that let you communicate with docker containers). It will be likely172.12.0.1; - Finally run
docker run -v /full/path/to/SECRETS.txt:/zzzzz/SECRETS.txt pielco11/zzzzz:es ipwhere ip is the one that you previously found.
Again, for every question don't hesitate to ask. If I'm missing your point, please let me know.