Elastic stack (ELK) + Filebeat for Monitoring Nginx on Docker
This is extended version from ELK on Docker with Filebeat plugin. Filebeat takes in charge of streaming log file from nginx to Logstash then processing it and visualize to Kibana.
What 's insides
├── app
│ ├── package.json
│ ├── package-lock.json
│ ├── src
│ │ └── index.js
│ └── yarn.lock
├── elasticsearch
│ ├── config
│ │ └── elasticsearch.yml
│ └── Dockerfile
├── filebeat
│ ├── config
│ │ └── filebeat.yml
│ └── Dockerfile
├── kibana
│ ├── config
│ │ └── kibana.yml
│ └── Dockerfile
├── logstash
│ ├── config
│ │ └── logstash.yml
│ ├── Dockerfile
│ └── pipeline
│ └── nginx.conf
├── nginx
│ ├── config
│ │ └── site.conf
│ ├── Dockerfile
│ └── log
│ ├── access.log
│ └── error.log
├── docker-compose.yml
├── LICENSE
└── README.md
- App: minimal simple Express app
- Nginx: web server for app.
- Elasticsearch: containing build image and configure for Elasticsearch
- Filebeat: containing build image and configure for Filebeat to streaming log of Nginx to Logstash
- Logstash: containing build image and configure pipeline for Logstash to process sent log file from Filebeat
- Kibana: containing build image and configure for Kibana to visualize data
Getting Started
To run this stack, run the following command
docker-compose up
Then go to http://localhost:5601
to see your data in Kibana
Default Kibana user information
- Username: elastic
- Password: changeme