- 拉取镜像
docker pull elasticsearch:7.12.0
- 创建网络
docker network create es-net
- 启动容器
docker run --name elasticsearch -d \
-p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
elasticsearch:7.12.0
参数说明:
-d:后台运行容器。
–name es:容器名称为es。
-e “discovery.type=single-node”:设置为单节点模式。
-p 9200:9200和-p 9300:9300:端口映射。
- 创建目录
mkdir -p /opt/env/es/config /opt/env/es/data /opt/env/es/plugins /opt/env/es/logs
- 拷贝容器配置文件到宿主机```
docker cp elasticsearch:/usr/share/elasticsearch/config/elasticsearch.yml /opt/env/es/config/elasticsearch.yml
- 设置跨域
http.cors.enabled: true
http.cors.allow-origin: "*"
- 设置权限
chmod -R 777 /opt/env/es
- 停止并且删除elasticsearch容器进程
docker stop elasticsearch && docker rm elasticsearch
- 启动elasticsearch
docker run --name elasticsearch -d \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
-m 4g \
--restart=always \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
-e ELASTIC_PASSWORD=123456 \
-e "xpack.security.http.ssl.enabled=false" \
-e "xpack.license.self_generated.type=basic" \
-v /opt/env/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /opt/env/es/data:/usr/share/elasticsearch/data \
-v /opt/env/es/plugins:/usr/share/elasticsearch/plugins \
-v /opt/env/es/logs:/usr/share/elasticsearch/logs \
elasticsearch:7.12.0
参数说明:
-d:后台运行容器。
–name es:容器名称为es。
-e “discovery.type=single-node”:设置为单节点模式。
-v es-data:/usr/share/elasticsearch/data:挂载数据目录。
-v es-plugins:/usr/share/elasticsearch/plugins:挂载插件目录。
–privileged:授予容器访问主机文件系统的权限。
–network es-net:加入名为es-net的网络。
-p 9200:9200和-p 9300:9300:端口映射。

被折叠的 条评论
为什么被折叠?



