接到一个需求,使用Rancher搭建一个单机版ES7,记录一下过程
首先,dockerhub搜索对应的镜像,并尝试能否使用
docker search elasticsearch:7
docker pull elasticsearch:7.10.1
docker images
#-p暴露两个端口,-e指定es为单机版
docker run -itd -p 9200:9200 -p 9300:9300 -e discovery.type=single-node --name es elasticsearch:7.10.1
宿主机IP+9200能访问es的页面,发现能访问
如果es为了安全需要设置密码,则需要加两个参数
#/usr/share/elasticsearch/config/elasticsearch.yml
xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
编写Dockerfile,将这两个参数加到镜像中
FROM elasticsearch:7.10.1
ADD ./elasticsearch.yml /usr/share/elasticsearch/config/elasticsearch.yml
构建镜像,停止之前的容器并运行
docker build . -t elasticsearch:7.10.1-yml
docker rm -f es
docker run -itd -p 9200:9200 -p 9300:9300 -e discovery.type=single-node --name es elasticsearch:7.10.1-yml
进入容器修改密码
docker exec -it es /bin/bash #进入容器
cd /usr/share/elasticsearch/bin
./elasticsearch-setup-passwords interactive #执行修改密码的命令
设置所有的用户密码都为elastic方便记忆
退出容器并将当前状态的容器固化成镜像
ctrl + p + q 退出容器,但容器不会停止
docker commit es elasticsearch:7.10.1-elastic #将正在运行中的es容器做成es的镜像
最后使用镜像启动容器即可
docker rm -f es
docker run -d -p 9200:9200 -p 9300:9300 --name es -e discovery.type=single-node elasticsearch:7.10.1-elastic
访问宿主机IP+9200
输入账号elastic密码elastic即可访问
将镜像打包传回公司内网
docker save elasticsearch:7.10.1-elastic > es-7101-elastic.tar
gzip es-7101-elastic.tar #加快传输速度二次压缩
最后解压并传到内网仓库就可以啦
gzip -d es-7101-elastic.tar.gz
docker load -i es-7101-elastic.tar
docker images
docker tag elasticsearch:7.10.1-elastic 仓库地址/elasticsearch:7.10.1-elastic
docker push 仓库地址/elasticsearch:7.10.1-elastic
#如果提示推送拒绝,说明没登录,登录一下即可
docker login -u 用户名 仓库地址
#然后重新推送就成功了
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
声明 本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 网站 aHR0cHM6Ly9mb2dhbmctbS5pdG91Y2h0di5jbi9t…