web-dev-qa-db-ja.com

docker-composeでデフォルトのelasticsearchパスワードを変更するにはどうすればよいですか?

Elasticsearchの 公式のdocker image documentation はこれを提供しますdocker-compose.ymlの例:

version: '2'
services:
  elasticsearch1:
    image: docker.elastic.co/elasticsearch/elasticsearch:5.6.3
    container_name: elasticsearch1
    environment:
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_Java_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 1g
    volumes:
      - esdata1:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - esnet
  elasticsearch2:
    image: docker.elastic.co/elasticsearch/elasticsearch:5.6.3
    environment:
      - cluster.name=docker-cluster
      - bootstrap.memory_lock=true
      - "ES_Java_OPTS=-Xms512m -Xmx512m"
      - "discovery.zen.ping.unicast.hosts=elasticsearch1"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 1g
    volumes:
      - esdata2:/usr/share/elasticsearch/data
    networks:
      - esnet

volumes:
  esdata1:
    driver: local
  esdata2:
    driver: local

networks:
  esnet:

ただし、パスワードのカスタマイズ方法については説明していません。 X-Packドキュメントページ に移動しますが、パスワードを変更するだけで問題をすべて解決する必要があるとは思いません。 Docker Composeファイルでelasticsearchのカスタムパスワードを構成する、より簡単で標準的な方法はありますか?

9
Ariel

6.0以降のelasticsearch Dockerイメージには、環境変数ELASTIC_PASSWORDを使用してパスワードを設定する機能があります。
例えば:
docker run -e ELASTIC_PASSWORD = MagicWord docker.elastic.co/elasticsearch/elasticsearch-platinum:6.1.3
参照: https://www.elastic.co/guide/en/elasticsearch/reference/6.1/docker.html

4
Elad Tamary