From cc2f64be2eaa21858197608ca8d81026e3fd12a9 Mon Sep 17 00:00:00 2001 From: ffknob Date: Tue, 14 Aug 2018 07:45:01 -0300 Subject: [PATCH] Revert "Revert "Set ELK components version from .env file" (#206)" (#303) This reverts commit 8f5b242d6a51615899ae920cc420b6393853ebcd. --- .env | 1 + README.md | 19 ++++++++++++++++++- docker-compose.yml | 6 ++++++ elasticsearch/Dockerfile | 4 +++- kibana/Dockerfile | 4 +++- logstash/Dockerfile | 4 +++- 6 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 .env diff --git a/.env b/.env new file mode 100644 index 0000000..bb4622b --- /dev/null +++ b/.env @@ -0,0 +1 @@ +ELK_VERSION=6.3.0 diff --git a/README.md b/README.md index 4115040..a49984b 100644 --- a/README.md +++ b/README.md @@ -43,12 +43,14 @@ Based on the official Docker images from Elastic: 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 ### Host setup -1. Install [Docker](https://www.docker.com/community-edition#/download) version **1.10.0+** +1. Install [Docker](https://www.docker.com/community-edition#/download) version **17.03+** 2. Install [Docker Compose](https://docs.docker.com/compose/install/) version **1.6.0+** 3. Clone this repository @@ -257,3 +259,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. diff --git a/docker-compose.yml b/docker-compose.yml index 79530ca..bd651fb 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -5,6 +5,8 @@ services: elasticsearch: build: context: elasticsearch/ + args: + ELK_VERSION: $ELK_VERSION volumes: - ./elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro ports: @@ -18,6 +20,8 @@ services: logstash: build: context: logstash/ + args: + ELK_VERSION: $ELK_VERSION volumes: - ./logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml:ro - ./logstash/pipeline:/usr/share/logstash/pipeline:ro @@ -33,6 +37,8 @@ services: kibana: build: context: kibana/ + args: + ELK_VERSION: $ELK_VERSION volumes: - ./kibana/config/:/usr/share/kibana/config:ro ports: diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index 465ac4b..f2f4f56 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -1,5 +1,7 @@ +ARG ELK_VERSION + # https://github.com/elastic/elasticsearch-docker -FROM docker.elastic.co/elasticsearch/elasticsearch-oss:6.3.0 +FROM docker.elastic.co/elasticsearch/elasticsearch-oss:${ELK_VERSION} # Add your elasticsearch plugins setup here # Example: RUN elasticsearch-plugin install analysis-icu diff --git a/kibana/Dockerfile b/kibana/Dockerfile index 36e0514..25d3fa8 100644 --- a/kibana/Dockerfile +++ b/kibana/Dockerfile @@ -1,5 +1,7 @@ +ARG ELK_VERSION + # https://github.com/elastic/kibana-docker -FROM docker.elastic.co/kibana/kibana-oss:6.3.0 +FROM docker.elastic.co/kibana/kibana-oss:${ELK_VERSION} # Add your kibana plugins setup here # Example: RUN kibana-plugin install diff --git a/logstash/Dockerfile b/logstash/Dockerfile index 85ed7bf..715f662 100644 --- a/logstash/Dockerfile +++ b/logstash/Dockerfile @@ -1,5 +1,7 @@ +ARG ELK_VERSION + # https://github.com/elastic/logstash-docker -FROM docker.elastic.co/logstash/logstash-oss:6.3.0 +FROM docker.elastic.co/logstash/logstash-oss:${ELK_VERSION} # Add your logstash plugins setup here # Example: RUN logstash-plugin install logstash-filter-json