Docker : Docker 安装ES

1.美图

在这里插入图片描述

2.概述

3.拉取镜像

(base) lcc@lcc ~$ docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
Error response from daemon: Get https://docker.elastic.co/v2/: net/http: TLS handshake timeout
(base) lcc@lcc ~$ docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
Error response from daemon: Get https://docker.elastic.co/v2/elasticsearch/elasticsearch/manifests/6.3.2: Get https://docker-auth.elastic.co/auth?scope=repository%3Aelasticsearch%2Felasticsearch%3Apull&service=token-service: net/http: TLS handshake timeout
(base) lcc@lcc ~$ docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
Error response from daemon: Get https://docker.elastic.co/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
(base) lcc@lcc ~$

这里可以采用加速下载,
https://hub.docker.com/_/elasticsearch

4.运行容器

ElasticSearch的默认端口是9200,我们把宿主环境9200端口映射到Docker容器中的19200端口,就可以访问到Docker容器中的ElasticSearch服务了,同时我们把这个容器命名为es。

docker run -d --name es -p 9200:19200 -p 9300:19300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2

5.配置跨域

为甚么要进行跨域?

5.1 进入容器

由于要进行配置,因此需要进入容器当中修改相应的配置信息。

docker exec -it es /bin/bash

5.2 进行配置

# 显示文件
ls
结果如下:
LICENSE.txt  README.textile  config  lib   modules
NOTICE.txt   bin             data    logs  plugins

# 进入配置文件夹
cd config

# 显示文件
ls
结果如下:
elasticsearch.keystore  ingest-geoip  log4j2.properties  roles.yml  users_roles
elasticsearch.yml       jvm.options   role_mapping.yml   users

# 修改配置文件
vi elasticsearch.yml

# 加入跨域配置
http.cors.enabled: true
http.cors.allow-origin: "*"

5.3 重启容器

由于修改了配置,因此需要重启ElasticSearch容器。

docker restart es

6.Docker 部署 ElasticSearch-Head

为什么要安装ElasticSearch-Head呢,原因是需要有一个管理界面进行查看ElasticSearch相关信息

6.1 拉取镜像

docker pull mobz/elasticsearch-head:5

6.2 运行容器

docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5

展示如下:

在这里插入图片描述

发布了1126 篇原创文章 · 获赞 454 · 访问量 141万+

猜你喜欢

转载自blog.csdn.net/qq_21383435/article/details/105082846