https://github.com/eea/eea.docker.graylog2
All-in-one, ready to run Graylog2 Docker image
https://github.com/eea/eea.docker.graylog2
Last synced: about 1 year ago
JSON representation
All-in-one, ready to run Graylog2 Docker image
- Host: GitHub
- URL: https://github.com/eea/eea.docker.graylog2
- Owner: eea
- Created: 2015-03-18T15:53:42.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2017-06-29T09:33:27.000Z (almost 9 years ago)
- Last Synced: 2025-03-25T04:51:23.259Z (about 1 year ago)
- Language: Shell
- Homepage: https://registry.hub.docker.com/u/eeacms/graylog2
- Size: 65.4 KB
- Stars: 12
- Watchers: 49
- Forks: 9
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Standalone Graylog2 Docker image
Out of the box, ready to run Graylog2 image.
Fit for open-source apps and configs.
Can run without specifying an admin password.
## DEPRECATED
Please use [the official Graylog2 image](https://hub.docker.com/r/graylog2/server)
## Versions:
* latest: Graylog2 2.2.3
* 2.2-3.1 Graylog2 2.2.3
* 2.0.3: Graylog2 2.0.3
* 2.0.2: Graylog2 2.0.2
* 1.3.4: Graylog2 1.3.4
* 1.3.3: Graylog2 1.3.3
* 1.3.2: Graylog2 1.3.2
* 1.2.2: Graylog2 1.2.2
* 1.2.1-2: Graylog2 1.2.1 with email transport configuration
* 1.2.1-1: Graylog2 1.2.1 standalone
* 1.2.1: Graylog2 1.2.1 allinone
* 1.0.0: Graylog2 1.0.0
## Dependencies
* ElasticSearch - [https://www.elastic.co](https://www.elastic.co)
* MongoDB - [https://www.mongodb.org](https://www.mongodb.org)
For a quick configuration example view [eea.docker.logcentral](https://github.com/eea/eea.docker.logcentral/blob/master/docker-compose.singlenode.yml)
## Ports
* 9000 - Graylog2 web interface
* 12201 - GELF input
## Configuration
Every configuration option can be set via environment variables, take a look [here](https://github.com/Graylog2/graylog2-server/blob/master/misc/graylog.conf) for an overview. Simply prefix the parameter name with ```GRAYLOG_``` and put it all in upper case. Another option would be to store the configuration file outside of the container and edit it directly.
## Environment variables
* ```GRAYLOG_PASSWORD``` - run the container overriding the admin password with
the value of this parameter. If no password is set either via ```/config``` or
this parameter, the server will run with an unusable auto-generated password.
* ```ENABLED_SERVICES``` - a list of comma separated values of the services to
be ran in this container. The available services are: ```server```, ```web```. By default __all__
services are started.
__Note:__ This option works only with custom server or
web interface configs because the default config expects elastic and mongo to be on localhost.
### Email transport configuration
* ```GRAYLOG_TRANSPORT_EMAIL_ENABLED``` - run the container with transport mail enable.
__Note:__ the value of this parameter is ```true``` or ```false```
* ```GRAYLOG_TRANSPORT_EMAIL_HOSTNAME``` - the hostname of mail server.
* ```GRAYLOG_TRANSPORT_EMAIL_PORT``` - the port of mail server.
* ```GRAYLOG_TRANSPORT_EMAIL_USE_AUTH``` - set ```true``` if mail server use authentication, ```false``` otherwise.
__Note:__ the value of this parameter is ```true``` or ```false```
* ```GRAYLOG_TRANSPORT_EMAIL_USE_TLS``` - set ```true``` if mail server use TLS authentication, ```false``` otherwise.
__Note:__ the value of this parameter is ```true``` or ```false```
* ```GRAYLOG_TRANSPORT_EMAIL_USE_SSL``` - set ```true``` if mail server use SSL authentication, ```false``` otherwise.
__Note:__ the value of this parameter is ```true``` or ```false```
* ```GRAYLOG_TRANSPORT_EMAIL_AUTH_USERNAME``` - the username used to connect to mail server if it use authentication.
* ```GRAYLOG_TRANSPORT_EMAIL_AUTH_PASSWORD``` - the password used to connect to mail server if it use authentication.
* ```GRAYLOG_TRANSPORT_EMAIL_SUBJECT_PREFIX``` - the subject prefix of sended emails.
* ```GRAYLOG_TRANSPORT_EMAIL_FROM_EMAIL``` - the sender email.
* ```GRAYLOG_TRANSPORT_EMAIL_WEB_INTERFACE_URL``` - the graylog2 web url used if you want to include links to the stream in your stream alert mails.
This should define the fully qualified base url to your web interface exactly the same way as it is accessed by your users.
#### Keeping node configuration persistent:
Graylog2 stores node config in a key: value manner, where the key is the node's id.
When using docker, the node id is given by the container id wich is regenerated after
each run. To have a persistent node_id use this:
```
docker run --name some-mongo -d mongo
docker run --name some-elasticsearch -d elasticsearch elasticsearch -Des.cluster.name="graylog2"
docker run -v /path/to/your/data:/data -p 9000:9000 eeacms/graylog2
```
### Useful Directories
These directories can be added as volumes in order to have a better control
over the behavior of Graylog2.
#### /config
```/config``` Can be added in order to use custom configuration files.
For the config to be loaded you have to add the following files:
* graylog-server.conf: For the graylog-server service
* graylog-web-interface.conf: For the graylog-web-interface service
If a file is not present, the service will run with the default configuration
(single container, all services available on localhost)
# Contributing
If you used this image and saw something that can be improved, please send a Pull Request.