一 环境
vbox5.2.8
centos7
docker 19.03.1
elasticsearch 7.9.1
二 进入centos7启动dcoker
systemctl start docker
三 打开docker官方仓库,搜索elasticsearch以查看需要下载的版本,拉取镜像的时候,官方推荐要指定版本号,目前最新7.3.0
二 拉取elasticsearch镜像
docker pull elasticsearch
三 使用镜像创建容器,启动elasticsearch服务
分两种方式,开发者模式和生产模式,开发者不需要配置太多,直接一行命令搞定,生产模式需要更多的配置
1.开发者模式
1.1创建网络
如果需要安装kibana等其他,需要创建一个网络,名字任意取,让他们在同一个网络,使得es和kibana通信
docker network create esnet
1.2 创建并启动elasticsearch容器
1.2.1查看镜像
docker images
1.2.2创建运行
docker run --name es -p 9200:9200 -p 9300:9300 --network esnet -e "discovery.type=single-node" elasticsearch:latest
--name 名称 给容器起个名字
-p 外部访问端口:容器端口 9200是供htpp访问端口,9300是供tcp访问的端口,如果不做端口映射,浏览器就不能访问elasticsearch的服务
--network 网络名 用于多个服务通信与隔离,例如用kibana连接elasticsearch就需要他们在同一个网络下
bdaab402b220 通过docker images命令查看到需要创建的容器id,此处用镜像名也可以
tips:run怎么使用?那么长怎么记,大概记一下,万能命令是
docker run --help
1.2.3 查看正在运行的容器,以确认elasticsearch容器是否创建成功
docker ps
可以看到status状态是up,说明已经在docker中成功运行了elasticseach
打开浏览器访问 http://192.168.33.30:9200/ 可以看到如下结果
ip地址换成你的linux主机的ip
{
* name: "1dec050451c0",
* cluster_name: "docker-cluster",
* cluster_uuid: "Fn-vrwfXT6C_IAg2OOyWfA",
*
version: {
* number: "7.9.1",
* build_flavor: "default",
* build_type: "docker",
* build_hash: "083627f112ba94dffc1232e8b42b73492789ef91",
* build_date: "2020-09-01T21:22:21.964974Z",
* build_snapshot: false,
* lucene_version: "8.6.2",
* minimum_wire_compatibility_version: "6.8.0",
* minimum_index_compatibility_version: "6.0.0-beta1"
},
* tagline: "You Know, for Search"
}