Skip to content

Commit

Permalink
Set ELK components version from .env file
Browse files Browse the repository at this point in the history
  • Loading branch information
gotjoshua authored and antoineco committed Nov 17, 2017
1 parent 55bfa14 commit 5075caf
Show file tree
Hide file tree
Showing 6 changed files with 46 additions and 13 deletions.
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ELK_VERSION=5.6.3
31 changes: 24 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ Based on the official Docker images:
6. [JVM tuning](#jvm-tuning)
* [How can I specify the amount of memory used by a service?](#how-can-i-specify-the-amount-of-memory-used-by-a-service)
* [How can I enable a remote JMX connection to a service?](#how-can-i-enable-a-remote-jmx-connection-to-a-service)
7. [Updates](#updates)
* [Using a newer stack version](#using-a-newer-stack-version)

## Requirements

Expand All @@ -57,7 +59,7 @@ On distributions which have SELinux enabled out-of-the-box you will need to eith
into Permissive mode in order for docker-elk to start properly. For example on Redhat and CentOS, the following will
apply the proper context:

```bash
```console
$ chcon -R system_u:object_r:admin_home_t:s0 docker-elk/
```

Expand All @@ -67,13 +69,13 @@ $ chcon -R system_u:object_r:admin_home_t:s0 docker-elk/

Start the ELK stack using `docker-compose`:

```bash
```console
$ docker-compose up
```

You can also choose to run it in background (detached mode):

```bash
```console
$ docker-compose up -d
```

Expand All @@ -94,7 +96,7 @@ By default, the stack exposes the following ports:
Now that the stack is running, you will want to inject some log entries. The shipped Logstash configuration allows you
to send content via TCP:

```bash
```console
$ nc localhost 5000 < /path/to/logfile.log
```

Expand All @@ -117,16 +119,16 @@ about the index pattern configuration.

Run this command to create a Logstash index pattern:

```bash
```console
$ curl -XPUT -D- 'http:https://localhost:9200/.kibana/index-pattern/logstash-*' \
-H 'Content-Type: application/json' \
-d '{"title" : "logstash-*", "timeFieldName": "@timestamp", "notExpandable": true}'
```

This command will mark the Logstash index pattern as the default index pattern:

```bash
$ curl -XPUT -D- 'http:https://localhost:9200/.kibana/config/5.6.2' \
```console
$ curl -XPUT -D- 'http:https://localhost:9200/.kibana/config/5.6.3' \
-H 'Content-Type: application/json' \
-d '{"defaultIndex": "logstash-*"}'
```
Expand Down Expand Up @@ -259,3 +261,18 @@ logstash:
environment:
LS_JAVA_OPTS: "-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=18080 -Dcom.sun.management.jmxremote.rmi.port=18080 -Djava.rmi.server.hostname=DOCKER_HOST_IP -Dcom.sun.management.jmxremote.local.only=false"
```

## Updates

### Using a newer stack version

To use a different Elastic Stack version than the one currently available in the repository, simply change the version
number inside the `.env` file, and rebuild the stack with:

```console
$ docker-compose build
$ docker-compose up
```

**NOTE**: Always pay attention to the [upgrade instructions](https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-upgrade.html)
for each individual component before performing a stack upgrade.
15 changes: 12 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@ version: '2'
services:

elasticsearch:
build: elasticsearch/
build:
context: elasticsearch/
args:
ELK_VERSION: $ELK_VERSION
volumes:
- ./elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
ports:
Expand All @@ -15,7 +18,10 @@ services:
- elk

logstash:
build: logstash/
build:
context: logstash/
args:
ELK_VERSION: $ELK_VERSION
volumes:
- ./logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml
- ./logstash/pipeline:/usr/share/logstash/pipeline
Expand All @@ -29,7 +35,10 @@ services:
- elasticsearch

kibana:
build: kibana/
build:
context: kibana/
args:
ELK_VERSION: $ELK_VERSION
volumes:
- ./kibana/config/:/usr/share/kibana/config
ports:
Expand Down
4 changes: 3 additions & 1 deletion elasticsearch/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
ARG ELK_VERSION

# https://github.com/elastic/elasticsearch-docker
FROM docker.elastic.co/elasticsearch/elasticsearch:5.6.3
FROM docker.elastic.co/elasticsearch/elasticsearch:${ELK_VERSION}

# Add your elasticsearch plugins setup here
# Example: RUN elasticsearch-plugin install analysis-icu
4 changes: 3 additions & 1 deletion kibana/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
ARG ELK_VERSION

# https://github.com/elastic/kibana-docker
FROM docker.elastic.co/kibana/kibana:5.6.3
FROM docker.elastic.co/kibana/kibana:${ELK_VERSION}

# Add your kibana plugins setup here
# Example: RUN kibana-plugin install <name|url>
4 changes: 3 additions & 1 deletion logstash/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
ARG ELK_VERSION

# https://github.com/elastic/logstash-docker
FROM docker.elastic.co/logstash/logstash:5.6.3
FROM docker.elastic.co/logstash/logstash:${ELK_VERSION}

# Add your logstash plugins setup here
# Example: RUN logstash-plugin install logstash-filter-json

0 comments on commit 5075caf

Please sign in to comment.