forked from docker/awesome-compose
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add Elasticsearch-Logstash-Kibana (ELK) example
Signed-off-by: Jing Li <thyrlian@gmail.com>
Showing
3 changed files
with
101 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
## Compose sample application | ||
### Elasticsearch, Logstash, and Kibana (ELK) in single-node | ||
|
||
Project structure: | ||
``` | ||
. | ||
└── docker-compose.yml | ||
``` | ||
|
||
[_docker-compose.yml_](docker-compose.yml) | ||
``` | ||
services: | ||
elasticsearch: | ||
image: elasticsearch:7.8.0 | ||
... | ||
logstash: | ||
image: logstash:7.8.0 | ||
... | ||
kibana: | ||
image: kibana:7.8.0 | ||
... | ||
``` | ||
|
||
## Deploy with docker-compose | ||
|
||
``` | ||
$ docker-compose up -d | ||
Creating network "elasticsearch-logstash-kibana_elastic" with driver "bridge" | ||
Creating es ... done | ||
Creating log ... done | ||
Creating kib ... done | ||
``` | ||
|
||
## Expected result | ||
|
||
Listing containers must show three containers running and the port mapping as below: | ||
``` | ||
$ docker ps | ||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES | ||
173f0634ed33 logstash:7.8.0 "/usr/local/bin/dock…" 43 seconds ago Up 41 seconds 0.0.0.0:5000->5000/tcp, 0.0.0.0:5044->5044/tcp, 0.0.0.0:9600->9600/tcp, 0.0.0.0:5000->5000/udp log | ||
b448fd3e9b30 kibana:7.8.0 "/usr/local/bin/dumb…" 43 seconds ago Up 42 seconds 0.0.0.0:5601->5601/tcp kib | ||
366d358fb03d elasticsearch:7.8.0 "/tini -- /usr/local…" 43 seconds ago Up 42 seconds (healthy) 0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp es | ||
``` | ||
|
||
After the application starts, navigate to below links in your web browser: | ||
|
||
* Elasticsearch: [`http://localhost:9200`](http://localhost:9200) | ||
* Logstash: [`http://localhost:9600`](http://localhost:9600) | ||
* Kibana: [`http://localhost:5601`](http://localhost:5601) | ||
|
||
Stop and remove the containers | ||
``` | ||
$ docker-compose down | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
version: '3.8' | ||
|
||
services: | ||
elasticsearch: | ||
image: elasticsearch:7.8.0 | ||
container_name: es | ||
environment: | ||
discovery.type: single-node | ||
ES_JAVA_OPTS: "-Xms512m -Xmx512m" | ||
ports: | ||
- "9200:9200" | ||
- "9300:9300" | ||
healthcheck: | ||
test: ["CMD-SHELL", "curl --silent --fail localhost:9200/_cluster/health || exit 1"] | ||
interval: 10s | ||
timeout: 10s | ||
retries: 3 | ||
networks: | ||
- elastic | ||
logstash: | ||
image: logstash:7.8.0 | ||
container_name: log | ||
environment: | ||
discovery.seed_hosts: logstash | ||
LS_JAVA_OPTS: "-Xms512m -Xmx512m" | ||
ports: | ||
- "5000:5000/tcp" | ||
- "5000:5000/udp" | ||
- "5044:5044" | ||
- "9600:9600" | ||
depends_on: | ||
- elasticsearch | ||
networks: | ||
- elastic | ||
kibana: | ||
image: kibana:7.8.0 | ||
container_name: kib | ||
ports: | ||
- "5601:5601" | ||
depends_on: | ||
- elasticsearch | ||
networks: | ||
- elastic | ||
networks: | ||
elastic: | ||
driver: bridge |