docker elastic search 设置密码,修改密码

设置密码

进入 elastic search 容器

docker exec -it elasticsearch /bin/bash

随机生成密码用auto, 自己设置用 interactive

[root@njfdkb4bmk3b elasticsearch]# ./bin/elasticsearch-setup-passwords -h
Sets the passwords for reserved users

Commands
--------
auto - Uses randomly generated passwords
interactive - Uses passwords entered by a user

Non-option arguments:
command              

Option             Description        
------             -----------        
-E <KeyValuePair>  Configure a setting
-h, --help         Show help          
-s, --silent       Show minimal output
-v, --verbose      Show verbose output

[root@cfeeab4bb0eb elasticsearch]# ./bin/elasticsearch-setup-passwords auto
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,remote_monitoring_user.
The passwords will be randomly generated and printed to the console.
Please confirm that you would like to continue [y/N]y


Changed password for user apm_system
PASSWORD apm_system = YxVzeT9B2jEDUjYp66Ws

Changed password for user kibana
PASSWORD kibana = 8NnThbj0N02iDaTGhidU

Changed password for user logstash_system
PASSWORD logstash_system = 9nIDGe7KSV8SQidSk8Dj

Changed password for user beats_system
PASSWORD beats_system = qeuVaf1VEALpJHfEUOjJ

Changed password for user remote_monitoring_user
PASSWORD remote_monitoring_user = DtZCrCkVTZsinRn3tW3D

Changed password for user elastic
PASSWORD elastic = q5f2qNfUJQyvZPIz57MZ

忘记密码

进入es的机器·

docker exec -it elasticsearch /bin/bash

创建一个临时的超级用户 RyanMiao

./bin/elasticsearch-users useradd ryan -r superuser
Enter new password: 
ERROR: Invalid password...passwords must be at least [6] characters long
[root@cfeeab4bb0eb elasticsearch]# ./bin/elasticsearch-users useradd ryan -r superuser
Enter new password: 
Retype new password: 

用这个用户去修改elastic用户的密码:

curl -XPUT -u ryan:ryan123 http://localhost:9200/_xpack/security/user/elastic/_password -H 
"Content-Type: application/json" -d '
{
  "password": "q5f2qNfUJQyvZPIz57MZ"
}'

参考:http://www.likecs.com/show-99086.html

Docker 安装 Elasticsearch 并配置用户涉及到几个关键步骤: ### 第一步:创建 Dockerfile 首先,你需要在项目目录下创建一个 `Dockerfile` 文件。这个文件将用于指定 Docker 容器运行所需的所有依赖、命令等。 ```dockerfile # 使用官方 Elasticsearch 的基础镜像作为构建基础 FROM eclipse/che-java # 设置工作目录到 /opt/elasticsearch WORKDIR /opt/elasticsearch # 将本地 Elasticsearch 镜像文件复制到容器内 COPY ./elasticsearch.jar . # 指定默认环境变量设置为生产模式,并允许远程连接 ENV ES_JAVA_OPTS="-Xms512m -Xmx512m" ENV ES_MAX_RESULT_WINDOW=10000 ENV ES_MAX_NUM_SEARCH_THREADS=4 ENV ES_HTTP_PATH_PREFIX=/api ENV ES_HOSTNAME=host.example.com # 暴露端口给外部服务访问 EXPOSE 9200 # 运行 Elasticsearch 应用程序 ENTRYPOINT ["java", "-jar", "elasticsearch.jar"] ``` ### 第二步:构建 Docker 镜像 接着,在包含了 `Dockerfile` 的目录下运行以下命令来构建 Docker 镜像: ```bash docker build -t my-elasticsearch . ``` 这里的 `-t` 参数用于指定镜像标签,你可以将其更改为任何你喜欢的名字。 ### 第三步:运行 Docker 容器 现在你已经拥有了一个包含 Elasticsearch 实例的 Docker 镜像,可以运行容器并启动 Elasticsearch: ```bash docker run -d --name elasticsearch_container -p 9200:9200 my-elasticsearch ``` 这里,`-d` 表示后台运行,`--name` 为容器命名,`-p` 映射宿主机端口 9200 到容器的内部端口 9200。 ### 第四步:配置用户权限 通常,Elasticsearch 默认使用内置用户和密码,但对于安全性考虑,建议更改默认配置。修改 `/opt/elasticsearch/config/elasticsearch.yml` 文件,添加或修改 `http` 和 `transport` 相关部分以允许特定用户和密码访问: ```yaml # 修改 http 和 transport 相关安全设置 http.cors.enabled: true http.cors.allow-origin: "*" http.user.name: admin http.user.password: secret network.publish_address: 0.0.0.0:9200 # 或者根据需要自定义地址 # 确保有适当的日志记录和监控 logging.level.org.elasticsearch: INFO ``` 请注意,这只是一个例子,实际应用中应根据需要调整安全设置。 ### 第五步:验证 Elasticsearch 是否正常运行 通过浏览器访问 `http://localhost:9200/_cluster/health` 来检查 Elasticsearch 的健康状态。 --- --- 相关问题 --: 1. **如何优化 Elasticsearch 性能**? 包括硬件需求、索引设置、缓存策略等。 2. **如何在生产环境中部署 Elasticsearch**? 考虑容错机制、数据备份、高可用集群等方面。 3. **在使用 Elasticsearch 存储大量数据时需要注意哪些事项**? 关键点包括数据量管理、性能指标监控、资源分配等。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值