共计 1314 个字符,预计需要花费 4 分钟才能阅读完成。
1. 下载镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.6.2
2. 启动容器
docker run --name elaticsearch -p 9200:9200 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1g -Xmx8g" docker.elastic.co/elasticsearch/elasticsearch:8.6.2
3. 复制出配置文件、插件、数据目录
# 创立一个目录,用来寄存 elasticsearch 配置和数据 | |
mkdir /data/elasticsearch | |
cd /data/elasticsearch | |
# 复制配置文件目录 | |
docker cp elasticsearch:/usr/share/elasticsearch/config /data/elasticsearch/config | |
# 复制插件目录 | |
docker cp elasticsearch:/usr/share/elasticsearch/plugins /data/elasticsearch/plugins | |
# 批改文件权限,不然 Docker 容器无奈写数据 | |
cd /data | |
chgrp -R 1000 elasticsearch | |
chown -R 1000 elasticsearch |
4. 重启容器
# 先移除容器 | |
docker stop elasticsearch | |
docker rm elasticsearch | |
# 再启动一个新的 (须要先配置 docker-compose.yml 文件) | |
docker-compose up |
docker-compose.yml 配置如下
version: "3.3" | |
services: | |
elasticsearch: | |
container_name: elasticsearch | |
image: docker.elastic.co/elasticsearch/elasticsearch:8.6.2 | |
restart: always | |
# 映射目录到宿主机 | |
volumes: | |
- /data/elasticsearch/config:/usr/share/elasticsearch/config | |
- /data/elasticsearch/data:/usr/share/elasticsearch/data | |
- /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins | |
ports: | |
- 9200:9200 | |
- 9300:9300 | |
environment: | |
# 指定单节点启动 | |
- discovery.type=single-node | |
- "ES_JAVA_OPTS=-Xms2g -Xmx8g" | |
# 开启内存锁定 | |
- bootstrap.memory_lock=true | |
# 不开启权限验证 | |
- xpack.security.enabled=false | |
# mem_limit: ${MEM_LIMIT} | |
ulimits: | |
# 勾销内存相干限度 用于开启内存锁定 | |
memlock: | |
soft: -1 | |
hard: -1 |
如需装置 IK 分词器,下载解压到 /data/elasticsearch/plugins,重启 ES 即可
正文完