{"id":19788320,"url":"https://github.com/graylog2/graylog-docker","last_synced_at":"2025-05-15T15:09:02.203Z","repository":{"id":17892751,"uuid":"82937771","full_name":"Graylog2/graylog-docker","owner":"Graylog2","description":"Official Graylog Docker image","archived":false,"fork":false,"pushed_at":"2025-03-31T12:33:01.000Z","size":544,"stargazers_count":385,"open_issues_count":16,"forks_count":134,"subscribers_count":34,"default_branch":"main","last_synced_at":"2025-03-31T20:06:21.843Z","etag":null,"topics":["docker","docker-image","graylog","log-analysis","log-management"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/graylog/graylog/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Graylog2.png","metadata":{"files":{"readme":"README.j2","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-02-23T14:54:57.000Z","updated_at":"2025-03-17T10:41:51.000Z","dependencies_parsed_at":"2023-10-26T15:49:53.528Z","dependency_job_id":"66c96ec2-3e2c-49e1-a341-41877d842b22","html_url":"https://github.com/Graylog2/graylog-docker","commit_stats":{"total_commits":395,"total_committers":25,"mean_commits":15.8,"dds":0.6481012658227848,"last_synced_commit":"c90a0ca401252e75dba8a80f9d1b2aa27e4ed233"},"previous_names":[],"tags_count":393,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Graylog2%2Fgraylog-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Graylog2%2Fgraylog-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Graylog2%2Fgraylog-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Graylog2%2Fgraylog-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Graylog2","download_url":"https://codeload.github.com/Graylog2/graylog-docker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247730068,"owners_count":20986404,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-image","graylog","log-analysis","log-management"],"created_at":"2024-11-12T06:26:50.037Z","updated_at":"2025-04-07T21:10:48.599Z","avatar_url":"https://github.com/Graylog2.png","language":"Shell","readme":"# Graylog Docker Image\n\n[![Docker Stars](https://img.shields.io/docker/stars/graylog/graylog.svg)][hub] [![Docker Pulls](https://img.shields.io/docker/pulls/graylog/graylog.svg)][hub]\n\n[hub]: https://hub.docker.com/r/graylog/graylog/\n\nThe latest stable version of Graylog is **`{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}`**.\n\n## What is Graylog?\n\nGraylog is a centralized logging solution that enables aggregating and searching through logs. It provides a powerful query language, a processing pipeline for data transformation, alerting abilities, and much more. It is fully extensible through a REST API. Add-ons can be downloaded from the [Graylog Marketplace](https://marketplace.graylog.org/).\n\n\n## Image Details\n\nThere are images for the `linux/amd64` and `linux/arm64` platforms available. All images are based on the latest [Eclipse Temurin image](https://hub.docker.com/_/eclipse-temurin) (JRE + Ubuntu LTS variant) available at build time.\n\n#### `graylog/graylog`\n\nThis is the open source [Graylog ](https://hub.docker.com/r/graylog/graylog/) image. It contains [Graylog](https://github.com/Graylog2/graylog2-server) as well as the [Integrations](https://docs.graylog.org/docs/integrations) plugin.\n\n| Java Version  | Platform  | Tags  |\n|---|---|---|\n{% if 'alpha' in graylog.patch_version or 'beta' in graylog.patch_version or 'rc' in graylog.patch_version -%}\n| OpenJDK 17 | `linux/amd64`, `linux/arm64` | `{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}-{{ graylog.release }}` |\n{% else -%}\n| OpenJDK 17 | `linux/amd64`, `linux/arm64` | `{{ graylog.major_version }}.{{ graylog.minor_version }}`, `{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}`, `{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}-{{ graylog.release }}` |\n{% endif %}\n\n\u003e Note: There is no 'latest' tag. You'll need to specify which version you want.\n\n#### `graylog/graylog-enterprise`\n\nThis is the [Graylog Enterprise](https://hub.docker.com/r/graylog/graylog-enterprise/) image. It contains [Graylog](https://github.com/Graylog2/graylog2-server), the [Graylog Enterprise](https://docs.graylog.org/docs/intro) plugin, the [Integrations](https://docs.graylog.org/docs/integrations) plugin, and the Enterprise Integrations plugin.\n\n| Java Version  | Platform  | Tags  |\n|---|---|---|\n{% if 'alpha' in graylog.patch_version or 'beta' in graylog.patch_version or 'rc' in graylog.patch_version -%}\n| OpenJDK 17 | `linux/amd64`, `linux/arm64` | `{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}-{{ graylog.release }}` |\n{% else -%}\n| OpenJDK 17 | `linux/amd64`, `linux/arm64` | `{{ graylog.major_version }}.{{ graylog.minor_version }}`, `{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}`, `{{ graylog.major_version }}.{{ graylog.minor_version }}.{{ graylog.patch_version }}-{{ graylog.release }}` |\n{% endif %}\n\n\n#### `graylog/graylog-forwarder`\n\nThis image runs the [Graylog Forwarder](https://hub.docker.com/r/graylog/graylog-forwarder/). Documentation on the Forwarder can be found [here](https://docs.graylog.org/docs/forwarder).\n\nThe latest stable version is **`{{ forwarder.version }}`**, with support for Java 17 on platform `linux/amd64` and `linux/arm64`.\n\n| Java Version  | Platform  | Tags  |\n|---|---|---|\n| OpenJDK 17 | `linux/amd64`, `linux/arm64` | `{{ forwarder.version }}`, `forwarder-{{ forwarder.version }}-{{ forwarder.release }}` |\n\n\n## Architecture\n\nTake a look at the minimal [Graylog architecture](https://docs.graylog.org/docs/architecture) to get the big picture of a Graylog setup. In essence, Graylog needs to talk to MongoDB to store configuration data as well as Elasticsearch to store the actual log data.\n\n\n## Configuration\n\nPlease refer to the [Graylog Docker documentation](https://docs.graylog.org/docs/docker) for a comprehensive overview and detailed description of the Graylog Docker image.\n\nIf you want to quickly spin up an instance for testing, you can use our [Docker Compose template](https://github.com/Graylog2/docker-compose).\n\nNotably, this image **requires** that two important configuration options be set (although in practice you will likely need to set more):\n1. `password_secret` (environment variable `GRAYLOG_PASSWORD_SECRET`)\n    * A secret that is used for password encryption and salting.\n    * Must be at least 16 characters, however using at least 64 characters is strongly recommended.\n    * Must be the same on all Graylog nodes in the cluster.\n    * May be generated with something like: `pwgen -N 1 -s 96`\n2. `root_password_sha2` (environment variable `GRAYLOG_ROOT_PASSWORD_SHA2`)\n    * A SHA2 hash of a password you will use for your initial login as Graylog's root user.\n      * The default username is `admin`.  This value is customizable via configuration option `root_username` (environment variable `GRAYLOG_ROOT_USERNAME`).\n    * In general, these credentials will only be needed to initially set up the system or reconfigure the system in the event of an authentication backend failure.\n    * This password cannot be changed using the API or via the Web interface.\n    * May be generated with something like: `echo -n \"Enter Password: \" \u0026\u0026 head -1 \u003c/dev/stdin | tr -d '\\n' | sha256sum | cut -d\" \" -f1`\n\n\nEvery [Graylog configuration option](https://docs.graylog.org/docs/server-conf) can be set via environment variable. To get the environment variable name for a given configuration option, simply prefix the option name with `GRAYLOG_` and put it all in upper case. Another option is to store the configuration file outside of the container and edit it directly.\n\nThis image includes the [wait-for-it](https://github.com/vishnubob/wait-for-it) script, which allows you to have Docker wait for Elasticsearch to start up before starting Graylog. For example, if you are using Docker Compose you could override the entrypoint for Graylog like this:\n\n`entrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 --  /docker-entrypoint.sh`\n\n\n\n\n\n\n## Documentation\n\nDocumentation for Graylog is hosted [here](https://docs.graylog.org/). Please read through the docs and familiarize yourself with the functionality before opening an [issue on GitHub](https://github.com/Graylog2/graylog2-server/issues).\n\n## License\n\nGraylog itself is licensed under the Server Side Public License (SSPL), see [license information](https://www.mongodb.com/licensing/server-side-public-license).\n\nThis Docker image is licensed under the Apache 2.0 license, see [LICENSE](LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgraylog2%2Fgraylog-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgraylog2%2Fgraylog-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgraylog2%2Fgraylog-docker/lists"}