1 拉取镜像
docker pull elasticsearch:8.2.0
2 创建文件夹
mkdir -p /mydata/es/data /mydata/es/config /mydata/es/plugins
3 修改权限
chmod 777 /mydata/es/data
chmod 777 /mydata/es/config
chmod 777 /mydata/es/plugins
4 运行
docker run \
--restart=always \
--privileged=true \
--name es \
-p 9200:9200 \
-p 9300:9300 \
-v /mydata/es/data:/usr/share/elasticsearch/data \
-v /mydata/es/plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx512m" \
-d elasticsearch:8.2.0
5 拷贝容器config文件夹
docker cp es:/usr/share/elasticsearch/config /mydata/es
6 停止
docker stop es
docker rm es
7 修改配置文件
vim /mydata/es/config/elasticsearch.yml
8 启动
docker run \
--restart=always \
--privileged=true \
--name es \
-p 9200:9200 \
-p 9300:9300 \
-v /mydata/es/config:/usr/share/elasticsearch/config \
-v /mydata/es/data:/usr/share/elasticsearch/data \
-v /mydata/es/plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx512m" \
-d elasticsearch:8.2.0
9 设置账号密码
#进入容器内部
docker exec -it es /bin/bash
#设置密码
/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive
10 访问
http://ip:9200/