2 |
3 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
66 | 67 | One of the most popular ELK on Docker repositories is the awesome [deviantony/docker-elk](https://github.com/deviantony/docker-elk). 68 | Elastdocker differs from `deviantony/docker-elk` in the following points. 69 | 70 | - Security enabled by default using Basic license, not Trial. 71 | 72 | - Persisting data by default in a volume. 73 | 74 | - Run in Production Mode (by enabling SSL on Transport Layer, and add initial master node settings). 75 | 76 | - Persisting Generated Keystore, and create an extendable script that makes it easier to recreate it every-time the container is created. 77 | 78 | - Parameterize credentials in .env instead of hardcoding `elastich:changeme` in every component config. 79 | 80 | - Parameterize all other Config like Heap Size. 81 | 82 | - Add recommended environment configurations as Ulimits and Swap disable to the docker-compose. 83 | 84 | - Make it ready to be extended into a multinode cluster. 85 | 86 | - Configuring the Self-Monitoring and the Filebeat agent that ship ELK logs to ELK itself. (as a step to shipping it to a monitoring cluster in the future). 87 | 88 | - Configured Prometheus Exporters. 89 | 90 | - The Makefile that simplifies everything into some simple commands. 91 | 92 |
93 |133 | 134 | #### To Start Monitoring and Prometheus Exporters 135 | ```shell 136 | $ make monitoring 137 | ``` 138 | #### To Ship Docker Container Logs to ELK 139 | ```shell 140 | $ make collect-docker-logs 141 | ``` 142 | #### To Start **Elastic Stack, Tools and Monitoring** 143 | ``` 144 | $ make all 145 | ``` 146 | #### To Start 2 Extra Elasticsearch nodes (recommended for experimenting only) 147 | ```shell 148 | $ make nodes 149 | ``` 150 | #### To Rebuild Images 151 | ```shell 152 | $ make build 153 | ``` 154 | #### Bring down the stack. 155 | ```shell 156 | $ make down 157 | ``` 158 | 159 | #### Reset everything, Remove all containers, and delete **DATA**! 160 | ```shell 161 | $ make prune 162 | ``` 163 | 164 |
165 |