Hi,
I had a local working docker setup for version 7.9.3
I want want to upgrade to 7.10 I don't care for lost data I just want to upgrade on my local machine. The production setup is on cloud and is already updated. I have struggled with this for a couple of days. The documentation says to put enterprise search into read only mode. But how do you do this in docker compose?
My docker compose:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:${ELASTICSEARCH_VERSION}
ports:
- ${ELASTICSEARCH_PORT}:9200
expose:
- ${ELASTICSEARCH_PORT}
environment:
- node.name=es-toway-main
- cluster.name=es-toway-docker-cluster
- bootstrap.memory_lock=true
- discovery.type=single-node
- xpack.security.enabled=true
- xpack.security.authc.api_key.enabled=true
- ELASTIC_PASSWORD=${ELASTICSEARCH_PASSWORD}
- "ES_JAVA_OPTS=-Xms1g -Xmx1g"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./.docker/elasticsearch:/usr/share/elasticsearch/data
elastic-app-search:
image: docker.elastic.co/enterprise-search/enterprise-search:${ELASTICSEARCH_VERSION}
ports:
- ${ELASTIC_APP_SEARCH_PORT}:3005
expose:
- ${ELASTIC_APP_SEARCH_PORT}
environment:
- ent_search.auth.source=standard
- elasticsearch.host=http://elasticsearch:${ELASTICSEARCH_PORT}
- elasticsearch.username=${ELASTICSEARCH_USER}
- elasticsearch.password=${ELASTICSEARCH_PASSWORD}
- "ENT_SEARCH_DEFAULT_PASSWORD=${ELASTIC_APP_SEARCH_PASSWORD}"
- ent_search.external_url=http://localhost:${ELASTIC_APP_SEARCH_PORT}
- ent_search.listen_port=${ELASTIC_APP_SEARCH_PORT}
- allow_es_settings_modification=true
- secret_management.encryption_keys=[${ELASTIC_APP_SEARCH_ENCRYPTION_KEY}]
depends_on:
- elasticsearch
volumes:
- ./.docker/elastic-app-search:/usr/share/enterprise-search/data
I get the read only error. I tried to add - enable_read_only_mode=true to the environment but that does nothing. The docs also lack any info on how to do this on docker.
My errors also switch randomly sometimes a get this error:
Elasticsearch API key service must be enabled. It is enabled automatically when you configure Elasticsearch to use TLS on the HTTP interface.
Alternatively, you can explicitly enable the setting within Elasticsearch by opening config/elasticsearch.yml and adding:
xpack.security.authc.api_key.enabled: true
And sometimes i get this one:
We need to perform 9/42 migrations before the service can be started.
Migrations pending: 20200804130700, 20200819161200, 20200820160000, 20200908160000, 20200909083401, 20200922121556, 20200923160000, 20200928151001, 20201001000000
Proceeding with migrations while indices are allowing writes can have unintended consequences.Please enable read-only mode before proceeding:
Read-only mode | Enterprise Search documentation [8.11] | Elastic