1. Generujemy hasło do naszego graylog
echo -n "Enter Password: " && head -1 < /dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1
Zapisujemy nasze hasło jak i wygenerowany hash.
2. Tworzymy plik docker-compose.yml
version: '2'
services:
mongo:
image: "mongo:3"
elasticsearch:
image: "elasticsearch:2"
command: "elasticsearch -Des.cluster.name='graylog'"
graylog:
image: graylog2/server:2.2.1-1
environment:
GRAYLOG_PASSWORD_SECRECT: NASZE_HASLO
GRAYLOG_ROOT_PASSWORD_SHA2: NASZ_HASH
GRAYLOG_WEB_ENDPOINT_URI:
depends_on:
- mongo
- elasticsearch
ports:
# Graylog web interface and REST API
- 9000:9000
# Syslog TCP
- 514:514
# Syslog UDP
- 514:514/udp
# GELF TCP
- 12201:12201
# GELF UDP
- 12201:12201/udp
Na końcu w sekcji ports zdefiniowanie są porty,które są mapowane z sieci docker na zewnętrz na podstawie dokumentacji
3. Testujemy pobranie obrazu graylog2
docker pull graylog2/server
4. Uruchamiamy poleceniem
docker-compose -f docker-compose.yml up
Powinien wystartować elasticsearch,mongo oraz finalnie graylog
Graylog jest dostępny pod adresem localhost:9000