1.部署单点ElasticSearch
1.1.创建网络
因为我们还需要部署kibana
容器,因此需要让ElasticSearch
和kibana
容器互联。这里先创建一个网络:
docker network create es-net
1.2.拉取镜像
考虑到ElasticSearch
的兼容性,这里ElasticSearch
、kibana
统一下载8.6.2
版本
# 拉取镜像
docker pull elasticsearch:8.6.2
1.3.第一次执行docker
脚本
docker run -it \
-p 9200:9200 \
-p 9300:9300 \
--name es \
--net es-net \
-e ES_JAVA_OPTS="-Xms1g -Xmx1g" \
-e "discovery.type=single-node" \
-e LANG=C.UTF-8 \
-e LC_ALL=C.UTF-8 \
elasticsearch:8.6.2
注意第一次执行脚本不要加-d
这个参数,否则看不到服务首次运行时生成的随机密码和随机enrollment token
1.4.创建Elasticsearch
挂载目录
mkdir -p /home/elk8.6.2/elasticsearch
1.5.给创建的文件夹授权
sudo chown -R 1000:1000 /home/elk8.6.2/elasticsearch
1.6.将容器内的文件复制到主机上
docker cp es:/usr/share/elasticsearch/config /home/elk8.6.2/elasticsearch
docker cp es:/usr/share/elasticsearch/data /home/elk8.6.2/elasticsearch
docker cp es:/usr/share/elasticsearch/plugins /home/elk8.6.2/elasticsearch
docker cp es:/usr/share/elasticsearch/logs /home/elk8.6.2/elasticsear