docker安装的es配置密码认证
要在Docker安装的Elasticsearch中配置密码认证,你需要使用Elasticsearch的内置用户(如elastic
用户)并为其设置密码。以下是步骤和示例配置:
- 创建密码文件。
- 修改
elasticsearch.yml
以启用安全特性,并指定密码文件。 - 使用Docker Compose启动Elasticsearch。
首先,创建一个密码文件。例如,在passwords.txt
中,你可以指定用户名和密码:
elastic:changeme
接着,创建一个docker-compose.yml
文件来定义你的Elasticsearch服务:
version: '3'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.0.0
environment:
- xpack.security.enabled=true
- ELASTIC_PASSWORD=changeme
- xpack.security.transport.ssl.enabled=true
- TZ=Asia/Shanghai
volumes:
- type: bind
source: ./elasticsearch.yml
target: /usr/share/elasticsearch/config/elasticsearch.yml
- type: bind
source: ./passwords.txt
target: /usr/share/elasticsearch/config/passwords.txt
ports:
- "9200:9200"
- "9300:9300"
ulimits:
memlock:
soft: -1
hard: -1
cap_add:
- IPC_LOCK
mem_limit: 4g
在elasticsearch.yml
中,确保启用安全特性并指定密码文件:
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
elasticsearch.passwords.file: passwords.txt
最后,运行Docker Compose来启动Elasticsearch:
docker-compose up -d
这样就会启动一个带有基本密码认证的Elasticsearch实例。记得将ELASTIC_PASSWORD
环境变量的值改为你的密码,并将elasticsearch.yml
和passwords.txt
文件的路径与你的实际路径对应。
评论已关闭