首先拉取elasticsearch和kibana镜像
docker pull elasticsearch:8.4.1
docker pull kibana:8.4.1
如果遇到镜像拉去不下来,遇到如下问题:
[ERROR] error pulling image configuration: Get "
https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/d9/d938dda2c6698adc94f7fdfd5ea8dafda26277d26b9b8f1
67407107648b09678/data?verify=1718723835-otFxVzLAZoGY8jD6gkUl4LzyxRU%3D": dial tcp 128.242.240.20:443: connect: connection refused
需要修改下doker的镜像配置文件,一般在/etc/docker/daemon.json文件中,添加以下文件:
"registry-mirrors":
["https://p8dc1q6z.mirror.aliyuncs.com",
"https://docker.m.daocloud.io",
"https://noohub.ru",
"https://huecker.io",
"https://dockerhub.timeweb.cloud" ]
镜像拉取成功后,我们自定义个网络,以后启动就基于该网络就好了,
docker network create elastic
详细解释:
docker: 这是Docker命令行工具的命令前缀,用于与Docker守护进程交互,执行各种容器管理和系统配置任务。
network create: 这是Docker命令中的一个子命令,用于创建一个新的网络。Docker网络是用来连接容器的虚拟网络,可以让容器之间以及容器与宿主机之间的通信更加灵活和安全。Docker提供了几种网络类型,包括桥接网络(默认)、主机网络、overlay网络以及自定义网络等。
elastic: 这是你要创建的网络的名称。在Docker中,网络名称是唯一的,用于标识和引用特定的网络。选择elastic可能是为了表明这个网络将用于连接Elasticsearch相关的容器或者其他需要弹性网络配置的服务。命名网络使得管理和服务发现变得更加直观。
下面我们就可以启动elasticsearch镜像了,
docker run --name elasticsearch --net elastic -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e CLI_JAVA_OPTS="-Xms512m -Xmx512m" \
-v esplugins:/usr/share/elasticsearch/p