# Enterprise Search 7.x - Docker Compose example

**URL:** https://discuss.elastic.co/t/enterprise-search-7-x-docker-compose-example/239782
**Category:** Elastic Tips and Common Fixes
**Tags:** docker
**Created:** [July 3, 2020, 11:02am UTC](https://discuss.elastic.co/t/enterprise-search-7-x-docker-compose-example/239782 "2020-07-03T11:02:21Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)
#### Post date: [July 3, 2020, 11:02am UTC](https://discuss.elastic.co/t/enterprise-search-7-x-docker-compose-example/239782/1 "2020-07-03T11:02:21Z")

</div>

Here is a simple way to start Enterprise Search (App Search and Workplace Search) with `docker-compose`.

## Elasticsearch

File: `docker-compose-elasticsearch.yml`

```auto
---
version: '3'
services:

  elasticsearch:
    image: $IMG_ELASTICSEARCH:$ELASTIC_VERSION
    environment:
      - bootstrap.memory_lock=true
      - discovery.type=single-node
      - "ES_JAVA_OPTS=-Xms3g -Xmx3g"
      - cluster.routing.allocation.disk.threshold_enabled=false
      - ELASTIC_PASSWORD=$ELASTIC_PASSWORD
      - xpack.security.enabled=true
      - xpack.security.authc.api_key.enabled=true
      - xpack.ml.enabled=false
    ulimits:
      memlock:
        soft: -1
        hard: -1
    ports: ["$ELASTICSEARCH_PORT:$ELASTICSEARCH_PORT"]
    networks: ['fscrawler_it']

networks:
  fscrawler_it: {}

```

## Enterprise Search

File: `docker-compose-enterprise-search.yml`

```auto
---
version: '3'
services:

  enterprisesearch:
    image: $IMG_ENTERPRISE_SEARCH:$ELASTIC_VERSION
    environment:
      - "ent_search.auth.source=standard"
      - "elasticsearch.username=elastic"
      - "elasticsearch.password=$ELASTIC_PASSWORD"
      - "elasticsearch.host=http://elasticsearch:9200"
      - "allow_es_settings_modification=true"
      - "secret_management.encryption_keys=[XYZ]"
      - "ENT_SEARCH_DEFAULT_PASSWORD=$ELASTIC_PASSWORD"
    ports: ["$ENTERPRISE_SEARCH_PORT:$ENTERPRISE_SEARCH_PORT"]
    networks: ['fscrawler_it']
    links: ['elasticsearch']
    depends_on: ['elasticsearch']
    restart: always

networks:
  fscrawler_it: {}

```

## Settings

`.env` file is:

```auto
# Elastic Stack settings
ELASTIC_VERSION=7.10.0
ELASTIC_PASSWORD=changeme

# Elasticsearch settings
IMG_ELASTICSEARCH=docker.elastic.co/elasticsearch/elasticsearch
ELASTICSEARCH_PORT=9200

# Enterprise Search settings
IMG_ENTERPRISE_SEARCH=docker.elastic.co/enterprise-search/enterprise-search
ENTERPRISE_SEARCH_PORT=3002

```

## Starting the stack

To start the stack:

```auto
docker-compose \
    -f docker-compose-elasticsearch.yml \
    -f docker-compose-enterprise-search.yml \
    up

```

Wait for everything to start. It could take several minutes:

```auto
enterprisesearch_1 | 2020-07-20 13:55:08.199:INFO:oejs.ServerConnector:main: Started ServerConnector@252570b9{HTTP/1.1}{0.0.0.0:3002}
enterprisesearch_1 | 2020-07-20 13:55:08.199:INFO:oejs.Server:main: Started @342868ms

```

Once started, you can open [http://localhost:3002](http://localhost:3002/) and connect with `enterprise_search` / `changeme` account.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [November 4, 2022, 8:04am UTC](https://discuss.elastic.co/t/enterprise-search-7-x-docker-compose-example/239782/2 "2022-11-04T08:04:56Z")

</div>


