
ELK
Run the Elastic stack (Elasticsearch, Logstash, Kibana) locally with Docker Compose.deviantony/docker-elk
- Stars
- 18.4k
- Forks
- 6.9k
- Licence
- MIT
- Language
- Shell
- Last update
- 4 days ago
- Type
- Dev tool
What it is
docker-elk packages Elasticsearch, Logstash and Kibana so you can start the whole Elastic stack with Docker and Docker Compose instead of installing each piece by hand. Elasticsearch stores and searches data, Logstash collects and transforms it, and Kibana gives you a web interface to explore and visualize it. The project is described as a template for learning and experimenting, not a production-ready deployment.
- Run Elasticsearch, Logstash and Kibana together with one Compose command
- Send Beats or TCP data into Logstash and explore it in Kibana
- Customize Elasticsearch, Kibana or Logstash settings via the included configuration files
- Enable the provided extensions for added functionality
Great for
- Developers who want to try the Elastic stack on a single machine
- Students learning how Elasticsearch, Logstash and Kibana fit together
- Teams prototyping log or data analysis pipelines before production planning
- People who want a starting template they can modify
Not ideal for
- Production deployments, because the README says it is not a production blueprint and disables Elasticsearch bootstrap checks for development use
- Machines with very little memory, since the README lists 1.5 GB of RAM as a requirement
- Users who cannot run Docker or lack permission to use the Docker daemon
How to get it
- 1
Run with Docker
You'll need: Docker Engine 18.06.0 or newer · Docker Compose 2.0.0 or newer · At least 1.5 GB of RAM · Git (to clone the repository)
Clone the repository
git clone https://github.com/deviantony/docker-elk.gitInitialize Elasticsearch users and groups
docker compose up setupStart the stack
docker compose up - 2
Run it
- Clone the repository onto your Docker host
- Run docker compose up setup and wait for it to complete without errors
- Run docker compose up to start the remaining components
- Wait about a minute, then open http://localhost:5601 and log in with elastic / changeme
- 3
Get the most out of it
- Reset the default passwords with bin/elasticsearch-reset-password as described in the README
- Generate Kibana encryption keys with docker compose up kibana-genkeys
- Use the provided extensions, enabled through the README's extensions section
- Check the README's sections on configuring Elasticsearch, Kibana and Logstash
- Try the tls branch if you need TLS encryption enabled
Downloads
Strengths
- Starts the full stack with a small number of Docker Compose commands
- Built on the official Elastic Docker images
- Configuration is minimal and easy to read, as the README describes
Trade-offs
- The README says it is not production-ready and turns off some Elasticsearch safety checks for development
- Default credentials are 'changeme' and must be changed after first startup
- Platinum features are on by default for a 30-day trial, after which the free Open Basic license applies
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| docker-elk (this) | 18.4k | Dev tool | beginner | 4 days ago | Developers who want to try the Elastic stack on a single machine |
| colima | 31.5k | Dev tool | beginner | 23 days ago | Mac developers who want Docker containers without Docker Desktop |
| laradock | 12.7k | Dev tool | intermediate | 7 days ago | PHP developers who want a consistent local environment across Linux, macOS and Windows |
| dockge | 24.7k | App | beginner | 14 days ago | People who run Docker Compose stacks on a home server or small Linux machine |
| vulhub | 21.4k | Dev tool | beginner | 19 days ago | Security students practicing reproducing known vulnerabilities |
| twint | 16.4k | CLI | intermediate | 3.7 years ago | Researchers studying public tweet patterns who need more history than the official API allows |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.