opsforgeio/opsforge

View on GitHub
composer/elk.yaml

Summary

Maintainability
Test Coverage
  # ELK CONTAINERS
  es:
    restart: always
    image: docker.elastic.co/elasticsearch/elasticsearch:7.5.2
    expose:
      - 9200
      - 9300
    volumes:
      - ./es_data:/usr/share/elasticsearch/data
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 1g
    environment:
      - discovery.type=single-node
      - network.host=0.0.0.0
      - discovery.zen.minimum_master_nodes=1
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    networks:
      es:
        aliases:
          - elasticsearch
  ls:
    restart: always
    image: docker.elastic.co/logstash/logstash:7.5.2
    entrypoint: sh
    command:
    - -c
    - |
      cat <<EOF> /usr/share/logstash/pipeline/logstash.conf
      input {
        tcp {
          port => 5000
          codec => plain
        }
      }
      
      output {
        elasticsearch { hosts => ["es:9200"] }
      }
      EOF
      
      /usr/local/bin/docker-entrypoint

    ports:
      - 5000:5000
    # environment:
    #   - LOG_LEVEL=debug
    networks:
      - es
  kib:
    restart: always
    image: docker.elastic.co/kibana/kibana:7.5.2
    expose:
      - 5601
    networks:
      es:
        aliases:
          - web
  kibpass:
    restart: always
    environment:
      FORWARD_PORT: 5601
      # Add htpassword here: http://www.htaccesstools.com/htpasswd-generator/ (example below is username=username password=password) - make sure to escape $ signs with $$
      HTPASSWD: 'username:$$apr1$$3X/xufbq$$xBqXarJxuOD0AMXJ4OYin.'
    ports:
      - 8000:80
    image: beevelop/nginx-basic-auth
    networks:
      - es