Public Repository

Last pushed: 5 months ago
Short Description
Elasticsearch is a powerful open source search and analytics engine that makes data easy to explore.
Full Description

DEPRECATION NOTICE

This image has been deprecated in favor of the official elasticsearch image provided and maintained by elastic.co. The list of images available from Elastic can be found at www.docker.elastic.co. The images found here will receive no further updates once the 6.0.0 release is available upstream. Please adjust your usage accordingly.

Elastic provides open-source support for Elasticsearch via the elastic/elasticsearch GitHub repository and the Docker image via the elastic/elasticsearch-docker GitHub repository, as well as community support via its forums.

Supported tags and respective Dockerfile links

No supported tags found!

It is very likely that elasticsearch does not support the currently selected architecture (ppc64le).

Quick reference

What is Elasticsearch?

Elasticsearch is a search server based on Lucene. It provides a distributed, multitenant-capable full-text search engine with a RESTful web interface and schema-free JSON documents.

Elasticsearch is a registered trademark of Elasticsearch BV.

wikipedia.org/wiki/Elasticsearch

How to use this image

Cluster

Note: since 5.0, Elasticsearch only listens on localhost by default on both http and transport, so this image sets http.host to 0.0.0.0 (given that localhost is not terribly useful in the Docker context).

As a result, this image does not support clustering out of the box and extra configuration must be set in order to support it.

Supporting clustering implies having Elasticsearch in a production mode which is more strict about the bootstrap checks that it performs, especially when checking the value of vm.max_map_count which is not namespaced and thus must be set to an acceptable value on the host (as opposed to simply using --sysctl on docker run).

One example of adding clustering support is to pass the configuration on the docker run:

$ docker run -d --name elas elasticsearch -Etransport.host=0.0.0.0 -Ediscovery.zen.minimum_master_nodes=1

See the following sections of the upstream documentation for more information:

This comment in elastic/elasticsearch#4978 shows why this change was added in upstream.

Elasticsearch will not start in production mode if vm.max_map_count is not high enough. [...] If the value on your system is NOT high enough, then your cluster is going to crash and burn at some stage and you will lose data.

Running Containers

You can run the default elasticsearch command simply:

$ docker run -d elasticsearch

You can also pass in additional flags to elasticsearch:

$ docker run -d elasticsearch -Des.node.name="TestNode"

This image comes with a default set of configuration files for elasticsearch, but if you want to provide your own set of configuration files, you can do so via a volume mounted at /usr/share/elasticsearch/config:

$ docker run -d -v "$PWD/config":/usr/share/elasticsearch/config elasticsearch

This image is configured with a volume at /usr/share/elasticsearch/data to hold the persisted index data. Use that path if you would like to keep the data in a mounted volume:

$ docker run -d -v "$PWD/esdata":/usr/share/elasticsearch/data elasticsearch

This image includes EXPOSE 9200 9300 (default http.port), so standard container linking will make it automatically available to the linked containers.

... via docker stack deploy or docker-compose

Example stack.yml for elasticsearch:

version: '3.1'

services:

    elasticsearch:
        image: elasticsearch

    kibana:
        image: kibana
        ports:
            - 5601:5601

Run docker stack deploy -c stack.yml elasticsearch (or docker-compose -f stack.yml up), wait for it to initialize completely, and visit http://swarm-ip:5601, http://localhost:5601, or http://host-ip:5601 (as appropriate).

License

View license information for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in the repo-info repository's elasticsearch/ directory.

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

Docker Pull Command
Owner
ppc64le