Indstil en Elasticsearch-instans ved hjælp af Docker-containere

Indstil En Elasticsearch Instans Ved Hjaelp Af Docker Containere



Elasticsearch er en distribueret, gratis og åben søge- og analysemaskine til alle typer data, herunder tekstuelle, numeriske, geospatiale, strukturerede og ustrukturerede.

Elasticsearch er bygget på Apache Lucene og blev først udgivet i 2010. Kendt for sine enkle REST API'er, distribuerede natur, hastighed og skalerbarhed, er Elasticsearch den centrale komponent i Elastic Stack, et sæt gratis og åbne værktøjer til dataindtagelse, berigelse , opbevaring, analyse og visualisering.

I denne vejledning vil vi hurtigt gennemgå processen med at konfigurere en Elasticsearch-instans ved hjælp af Docker-beholderne.







Krav:

For at køre de kommandoer og trin, der er angivet i dette indlæg, skal du sikre dig, at du har følgende:



  1. Installeret Docker Engine
  2. Installeret Docker Compose
  3. Tilstrækkelige tilladelser til at køre Docker-containerne

Definer Docker Compose-filen

Det første trin er at definere Docker Compose-konfigurationen for at køre Docker-beholderen. Start med at oprette mappen til at gemme konfigurationsfilen:



$ mkdir elastik
$ cd elastik

Opret en 'docker-compose.yml' fil for at køre Elasticsearch-klyngen som vist i følgende eksempelkonfiguration:





version: '3'
tjenester:
elasticsearch01:
billede: docker.elastic.co / elastisk søgning / elasticsearch:8.9.2
containernavn: elasticsearch01
havne:
- 9200 : 9200
- 9300 : 9300
miljø:
discovery.type: enkelt-node
netværk:
- elastik
kibana01:
billede: docker.elastic.co / kibana / kibana: 8.9.2
containernavn: kibana01
havne:
- 5601 : 5601
miljø:
ELASTICSEARCH_URL: http: // elasticsearch01: 9200
ELASTICSEARCH_HOSTS: http: // elasticsearch01: 9200
netværk:
- elastik
netværk:
elastik:
fører: bro

I denne eksempelfil definerer vi to tjenester. Den første sætter Elasticsearch-tjenesten op, og den anden sætter Kibana-instansen op. Trinene er som beskrevet i det følgende:

  • Brug Elasticsearch 8.9.2-billedet.
  • Kortlæg portene 9200 og 9300 fra containeren til værten.
  • Indstil miljøvariablen 'discovery.type tosingle-node' for Elasticsearch.
  • Opret forbindelse til et brugerdefineret netværk kaldet 'elastic'.

I Kibana-tjenesten udfører vi følgende handlinger:



  • Brug Kibana 8.9.2-billedet.
  • Kortlæg port 5601 fra containeren til værten.
  • Angiv Elasticsearch-forbindelses-URL'erne gennem miljøvariablerne ELASTICSEARCH_URL og ELASTICSEARCH_HOSTS.
  • Tilslut til det elastiske netværk.

Til sidst opsætter vi et brugerdefineret netværk kaldet 'elastic' ved hjælp af brodriveren, som gør det muligt for Elasticsearch- og Kibana-beholderne at kommunikere.

Kør containeren

Når vi har defineret tjenesterne, kan vi fortsætte og køre containerne ved hjælp af kommandoen Docker Compose som følger:

$ docker komponere op -d

Få adgang til Elasticsearch og Kibana

Når containerne er startet, kan vi fortsætte og få adgang til deres forekomster på følgende adresser:

http: // lokal vært: 9200 - > Elasticsearch

http: // lokal vært: 5601 - > Kibana

Kør Elasticsearch ved hjælp af Docker 'Run' kommandoen

Du kan også hurtigt køre Elasticsearch ved at bruge docker 'run'-kommandoen uden at skulle definere den brugerdefinerede konfiguration.

Start med at oprette et Docker-netværk til at knytte til Elasticsearch-forekomsten:

$ docker netværk skabe elg

Når den er oprettet, skal du køre følgende kommando for at oprette Elasticsearch-forekomsten og vedhæfte den til det oprettede netværk:

$ docker-løb -d --navn elastisk søgning --net elg -s 9200 : 9200 -s 9300 : 9300 -Det er 'discovery.type=single-node' elasticsearch:tag

Dette forenkler processen med at oprette en brugerdefineret 'docker-compose'-fil og køre Elasticsearch-forekomsten hurtigt.

Konklusion

Denne artikel dækkede de grundlæggende trin i at definere og køre en Elasticsearch- og Kibana-forekomst ved hjælp af Docker-beholderne.