如果想离线安装docker、redis、gninx、mysql可参照下面这个。
离线环境下,docker安装redis、ngnix、mysql
获取离线包
方式1
找一个能上网的环境,下载elasticsearch的镜像,然后将这个镜像导出
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.18
导出es
注意下面的镜像ID换成你自己实际的镜像ID
docker save -o elasticsearch-7.17.18.tar 5bb65e5bbcb2
方式2
用我提前下载好的
下载地址:https://download.csdn.net/download/m0_37892044/91239289
导入到离线机
将进项包上传到离线服务器上,然后加载该镜像
docker load -i elasticsearch-7.17.18.tar
查看加载完的镜像
docker images -a
这里可以发现tag为none,我们可以从命名一下
docker tag 5bb65e5bbcb2 elasticsearch:7.17.18
挂载目录
创建es的config、log、data、plugins目录
mkdir -p /home/admin/docker-config/elasticsearch/config
mkdir -p /home/admin/docker-config/elasticsearch/log
mkdir -p /home/admin/docker-config/elasticsearch/data
mkdir -p /home/admin/docker-config/elasticsearch/plugins
创建配置文件
vim /home/admin/docker-config/elasticsearch/config/elasticsearch.yml
network.host: 0.0.0.0
http.cors.allow-origin: "*"
http.cors.enabled: true
xpack.security.enabled: false
es赋权
给elasticsearch目录赋权
chmod -R 777 /home/admin/docker-config/elasticsearch
如果出现下面报错:Could not create the Java Virtual Machine,一般都是权限问题
创建容器
docker run --name elasticsearch7 --network host \
-e "discovery.type=single-node" \
-e "cluster.name=elasticsearch7" \
-e "ES_JAVA_OPTS=-Xms1g -Xmx1g" \
-v /home/admin/docker-config/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /home/admin/docker-config/elasticsearch/data:/usr/share/elasticsearch/data \
-v /home/admin/docker-config/elasticsearch/logs:/usr/share/elasticsearch/logs \
-v /home/admin/docker-config/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-d elasticsearch:7.17.18
验证
通过查看容器运行状态,或者浏览器访问
访问地址:http://ip:端口