# elasticsearch ## install - [docker](https://registry.hub.docker.com/_/elasticsearch) ```bash docker pull elasticsearch:tag docker network create somenetwork docker run -d --name es --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:tag docker run -d --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" elasticsearch:7.14.2 # 修改配置 docker exec -it es bash vi config/elasticsearch.yml http.cors.enabled: true http.cors.allow-origin: "*" network.publish_host: 127.0.0.1 # 可视化 docker run -p 9800:9800 -d --link es:demo --name eshd containerize/elastichd #docker run -p 1358:1358 -d appbaseio/dejavu #docker pull mobz/elasticsearch-head:5 #docker run -d -p 9100:9100 mobz/elasticsearch-head:5 ``` ## goang sdk ```go // https://github.com/elastic/go-elasticsearch import ( github.com/elastic/go-elasticsearch/v7 ) es, err := elasticsearch.NewClient(elasticsearch.Config{}) // create document req := esapi.IndexRequest{ Index: "sample_edge", Body: bytes.NewReader(body), } res, err := req.Do(context.Background(), es) if err != nil { return } defer res.Body.Close() ```