docker 安装elasticsearch

docker 安装elasticsearch 

请参考官方docker-compose文件https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

 安装之前请参考如下链接

1) 安装docker 

https://www.cnblogs.com/faberbeta/p/12853704.html

2) 安装docker-compose

https://www.cnblogs.com/faberbeta/p/12853753.html

在装之前先修改sysctl.conf文件 

echo 'vm.max_map_count=262144' > /etc/sysctl.conf
sysctl -p
echo "root soft nofile 65536" >> /etc/security/limits.conf
echo "root hard nofile 65536" >> /etc/security/limits.conf
echo "* soft nofile 65536" >> /etc/security/limits.conf
echo "* hard nofile 65536" >> /etc/security/limits.conf
source /etc/security/limits.conf
 

1)docker安装单节点elasticsearch 

docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.9.0

2)docker安装三节点elasticsearch 

mkdir /usr/local/elasticsearch

下面的命令直接把代码写到docker-compose.yml

#注意对外的端口修改为 49200

之后cd /usr/local/elasticsearch

docker-compose up -d

#看看是否工作

curl -X GET "localhost:49200/_cat/nodes?v&pretty"

还是推荐去看看官方的链接

cat << EOF > /usr/local/elasticsearch/docker-compose.yml 
version: '2.2'
services:
  es01:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.0
    container_name: es01
    environment:
      - node.name=es01
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es02,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data01:/usr/share/elasticsearch/data
    ports:
      - 49200:9200
    networks:
      - elastic
  es02:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.0
    container_name: es02
    environment:
      - node.name=es02
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data02:/usr/share/elasticsearch/data
    networks:
      - elastic
  es03:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.9.0
    container_name: es03
    environment:
      - node.name=es03
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es02
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data03:/usr/share/elasticsearch/data
    networks:
      - elastic

volumes:
  data01:
    driver: local
  data02:
    driver: local
  data03:
    driver: local

networks:
  elastic:
    driver: bridge
EOF
原文地址:https://www.cnblogs.com/faberbeta/p/13575871.html