文章目录
一,103-全文检索-ElasticSearch-Docker安装ES
1,下载镜像文件
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.13.0
docker pull docker.elastic.co/kibana/kibana:7.13.0
2,Elasticsearch安装
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
chmod -R 777 /mydata/elasticsearch/ 保证权限
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d docker.elastic.co/elasticsearch/elasticsearch:7.13.0
以后再外面装好插件重启即可;
特别注意:
-e ES_JAVA_OPTS=“-Xms64m -Xmx256m” \ 测试环境下,设置 ES 的初始内存和最大内存,否则导
致过大启动不了 ES
这段代码是一系列Linux命令和Docker命令的组合,用于设置并运行Elasticsearch服务。下面是对每条命令的详细解释:
-
mkdir -p /mydata/elasticsearch/config
- 这条命令创建一个名为
config
的目录在/mydata/elasticsearch/
路径下。-p
参数确保即使父目录不存在时,也会创建父目录。
- 这条命令创建一个名为
-
mkdir -p /mydata/elasticsearch/data
- 类似于上一条命令,这条命令创建一个名为
data
的目录在/mydata/elasticsearch/
路径下,用于存储Elasticsearch的数据。
- 类似于上一条命令,这条命令创建一个名为
-
echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
- 这条命令将字符串
http.host: 0.0.0.0
追加到elasticsearch.yml
配置文件中。这表示Elasticsearch服务将监听所有网络接口上的HTTP请求。
- 这条命令将字符串
-
chmod -R 777 /mydata/elasticsearch/
- 这条命令将
/mydata/elasticsearch/
目录及其所有子目录和文件的权限设置为777,即所有用户都可以读取、写入和执行。
- 这条命令将
-
docker run ...
-
这是一条Docker命令,用于运行一个名为
elasticsearch
的容器实例。 -
--name elasticsearch
: 给容器指定一个名称elasticsearch
。 -
-p 9200:9200 -p 9300:9300
: 将容器的9200和9300端口映射到宿主机的相应端口,9200是HTTP REST API端口,9300是节点间通信的端口。 -
-e "discovery.type=single-node"
: 设置环境变量,指定Elasticsearch运行在单节点模式,不加入集群。 -
-e ES_JAVA_OPTS="-Xms64m -Xmx512m"
: 设置Java虚拟机的初始和最大内存分配。 -
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
: 将宿主机的配置文件挂载到容器内的相应位置。 -
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data
: 将宿主机的数据目录挂载到容器内,用于持久化存储Elasticsearch数据。 -
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins
: 将宿主机的插件目录挂载到容器内,用于存放Elasticsearch插件。 -
-d docker.elastic.co/elasticsearch/elasticsearch:7.13.0
: 指定要运行的Docker镜像及其版本,这里是Elasticsearch的官方镜像,版本7.13.0,-d
参数表示以守护进程模式运行。
-
整个脚本的目的是设置一个Elasticsearch服务,配置其监听所有网络接口,并且通过Docker容器化运行,同时确保数据和配置的持久化存储。
3,验证
在浏览器输入地址47.3.217.59:9200
,有如下输出,说明安装成功。
二,104-全文检索-ElasticSearch-Docker安装Kibana
1,下载镜像文件
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.13.0
docker pull docker.elastic.co/kibana/kibana:7.13.0
2,kibana的安装
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://172.22.29.149:9200 -p 5601:5601 -d docker.elastic.co/kibana/kibana:7.13.0
这条Docker命令是用于运行Kibana服务的。下面是对命令的详细解释:
-
docker run
: Docker的运行命令,用于创建并启动一个新的容器。 -
--name kibana
: 指定容器的名称为kibana
。 -
-e ELASTICSEARCH_HOSTS=http://172.22.29.149:9200
: 设置环境变量ELASTICSEARCH_HOSTS
,指定Kibana连接的Elasticsearch服务器的地址和端口。这里指定的是http://172.22.29.149:9200
,这是一个内网IP地址和Elasticsearch服务的默认端口9200。 -
-p 5601:5601
: 将容器的5601端口映射到宿主机的5601端口,Kibana的Web界面默认运行在这个端口上。 -
-d
: 以守护进程模式运行容器,即在后台运行。 -
docker.elastic.co/kibana/kibana:7.13.0
: 指定要使用的Docker镜像及其版本,这里是Kibana的官方镜像,版本号为7.13.0。
这个命令的作用是启动一个Kibana容器实例,并配置它连接到指定的Elasticsearch服务器。用户可以通过访问宿主机的5601端口来访问Kibana的Web界面,进行数据的可视化和管理。如果因为网络原因无法解析提供的IP地址,可能需要检查网络连接或IP地址的合法性。如果用户需要进一步的帮助或者有其他问题,可以继续提问。
3,验证
在浏览器输入47.3.217.59:5601/app/home#/
,有如下显示,说明kibana
安装成功。