opensearchproject/opensearch
The Official Docker Image of OpenSearch (https://opensearch.org/)
50M+
Maintained by:OpenSearch team
Need help? Ask questions and discuss on our community forum.
Need to an file issue? Use our issue tracker to report problems with builds or Docker images.
OpenSearch is a scalable, flexible, and extensible open-source software suite for search, analytics, and observability applications derived from Elasticsearch 7.10.2 and Kibana 7.10.2 and licensed under Apache 2.0. It consists of a search engine daemon (OpenSearch) and a user interface for data administration and visualizations (OpenSearch Dashboards).
You can pull the OpenSearch Docker image just like any other image.
docker pull opensearchproject/opensearch:latest
See Docker Hub for a list of all available versions.
Note: OpenSearch images use Amazon Linux 2 as the base image for 1.x versions and 2.x versions up until 2.9.0, and Amazon Linux 2023 since 2.10.0. If you are using Docker Desktop, then we recommend configuring Docker to use a minimum of 4 GB of your system memory.
Run a single node for local development.
docker run -it -p 9200:9200 -p 9600:9600 -e "discovery.type=single-node" --name opensearch-node -d opensearchproject/opensearch:latest
Note: For OpenSearch 2.12 and later, a custom password for the admin user is required to be passed to set-up and utilize demo configuration.
docker run -it -p 9200:9200 -p 9600:9600 -e OPENSEARCH_INITIAL_ADMIN_PASSWORD=<strong-password> -e "discovery.type=single-node" --name opensearch-node opensearchproject/opensearch:latest
Send requests to the OpenSearch REST API to verify that OpenSearch is working. By default, OpenSearch uses self-signed TLS certificates. The -k
short option skips the certificate verification step so requests don't fail. The default username is admin
and the password will be admin
for OpenSearch 2.12 and earlier. For OpenSearch 2.12 and later, the password will be the custom value, which is required to be provided during the demo configuration setup for security plugin.
curl -X GET "https://localhost:9200" -ku admin:<password>
curl -X GET "https://localhost:9200/_cat/nodes?v" -ku admin:<password>
curl -X GET "https://localhost:9200/_cat/plugins?v" -ku admin:<password>
You can stop, start, and restart your container by passing either the container ID or the container name as an argument. For example, to stop the container use the following command.
docker stop opensearch-node
Get started with an OpenSearch cluster by using Docker Compose. If you use Docker Desktop then Docker Compose is already installed on your machine and you will use the command docker compose
. Otherwise, you will need to manually install Docker Compose.
If Python is installed in your environment, then you can use a utility such as pip
, the package installer for Python, to install Docker Compose.
pip install docker-compose
After the installation is complete, define a cluster in a Compose file. The OpenSearch Project provides a sample docker-compose.yml you can use. Once you've created the file, use Docker Compose to build and manage your cluster.
Navigate to the directory where you saved docker-compose.yml
and start your cluster. Use the -d
option to run the containers in the background.
docker-compose up -d
Stop the cluster with the following command.
docker-compose down
If you also with to delete the associated data volumes, use the -v
option.
docker-compose down -v
OpenSearch and its included plugins are licensed under Apache License, Version 2.0.
OpenSearch is, and will remain, 100% open-source under the Apache 2.0 license. As the project grows, we hope you will join us and contribute.
We want to make it easy for your to get started and remove friction - no lengthy contributor license agreement - so you can focus on writing great code.
Check out OpenSearch to learn more.
docker pull opensearchproject/opensearch