Docker 上安装 Elasticsearch 5

    在DOCKER中安装Elasticsearch与普通集群上安装基本一致,只是有几个问题需要注意下。

1、Docker容器不能持久保存配置信息与数据,所以需要增加两个卷,数据卷与配置卷:

  在Dockerfile中增加:

    VOLUME ["/usr/local/elasticsearch/config"]
    VOLUME ["/usr/local/elasticsearch/data"]

  在容器启动时通过 -V 参数进行挂载。

  权限问题,容器启动后,会发现挂载的卷只有root用户能读写,其他用户没有权限,所以我们需要在宿主机中创建一个用户,比如 elasticsearch 用户ID为1001(容器中创建的elasticsearch用户ID要与该ID相同),将以上两目录的权限授给它:

    chown -R elastchsearch  /usr/local/elasticsearch

2、启动用户的配置,elasticsearch 不能通过root用户启动,需要创建用户,在dockerfile中:

  RUN useradd -d "/home/elasticsearch" -u 1001 -m -s /bin/bash elasticsearch

     在supervisord.conf文件中配置:    

  [program:elasticsearch]
  user=elasticsearch      --elasticsearch启动用户
  stdout_logfile=/usr/local/elasticsearch/es.log  --elasticsearch启动日志
  environment=JAVA_HOME=/usr/local/jdk       --环境变量
  command=/bin/bash -c "exec ${ES_HOME}/bin/elasticsearch"

3、修改容器中的系统参数,vm.max_map_count。

    在Dockerfile中增加:      

    COPY myinit.sh /bin/myinit.sh
    RUN chmod +x /bin/myinit.sh

    myinit.sh文件内容:     

       echo vm.max_map_count=262144 >> /etc/sysctl.conf
       sysctl -p

   在supervisord.conf中增加:

        [program:myinit.sh]

       stdout_logfile=/myinit.log
       command=/bin/sh /bin/myinit.sh

   在启动容器时,需要加上提升特权参数:--privileged

       

转载于:https://www.cnblogs.com/xuanyuanjushi/p/first.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值