Как стать автором
Обновить

Комментарии 6

При запуске Elasticsearch с помощью Docker команда для его запуска выглядит так:

$ docker run --name elasticsearch -d --rm -p 9200:9200 \    --memory="2GB" \    -e discovery.type=single-node -e xpack.security.enabled=false \    -t docker.elastic.co/elasticsearch/elasticsearch:8.11.1

Эта инструкция работать не будет работать для IP-адресов из России, так как docker.elastic.co заблокировало доступ для "дорогих россиян".

Но выйти из положения можно - здесь я использовал рамдомную версию Elasticsearch

Подтягиваем образ с DockerHub

docker pull elasticsearch:7.17.22

Далее создаем контейнер

docker run --name elasticsearch -d --rm -p 9200:9200 --memory="2GB" -e discovery.type=single-node -e xpack.security.enabled=false -t elasticsearch:7.17.22

В Docker Compose в YAML-файле это будет выглядеть так:

elasticsearch:
    image: elasticsearch:7.17.22
    container_name: elasticsearch
    environment:
      - discovery.type=single-node
      - xpack.security.enabled=false
    mem_limit: 2GB

Вообще очень хорошие статьи - всегда хочется немного освежить основы. Причем оригинальный автор Miguel Grinberg - довольно известный ирландский программист. Если встретите его книжку по SQLAlchemy 2.0 - советую ознакомиться, очень хорошо она написана

Спасибо большое за подробный гайд, уверен многие воспользуются им. И отдельное спасибо за рекомендацию по литературе.

Скачать образ elasticsearch 8.14.3 можно :

docker pull cubinez85/elasticsearch_8.14:7a6696851b5f

docker run и все инструкции:

https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

Или : docker pull cubinez85/elasticsearch_8.14.3:latest

по вопросу https://qna.habr.com/q/1361824

в сonfig.py :

es_url = os.getenv('ELASTICSEARCH_URL')

es_ca_certs = os.getenv("ELASTICSEARCH_CA_CERTS")

es_username = os.getenv("ELASTICSEARCH_USERNAME")

es_password = os.getenv("ELASTICSEARCH_PASSWORD")

es = Elasticsearch(es_url, ca_certs=es_ca_certs, basic_auth=(es_username, es_password))

в app/__init__.py пришлось верх часть добавить, тк переменные es* не находит.

и в def create_app добавить : app.elasticsearch = es \
if es else None

Вообщем вышло криво, но работает)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории