
neatous/graylogGraylog是一款功能强大的开源日志管理和分析平台,旨在帮助用户集中收集、存储、处理、搜索和可视化来自各种来源的日志数据。通过Docker镜像部署Graylog,可以快速搭建日志管理系统,简化配置流程,适用于企业IT环境、云基础设施、应用程序监控等场景。
Graylog依赖MongoDB和Elasticsearch,以下为单节点快速启动流程:
bashdocker run -d --name mongo -p 27017:27017 mongo:5
bashdocker run -d --name elasticsearch \ -p 9200:9200 \ -e "discovery.type=single-node" \ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ docker.elastic.co/elasticsearch/elasticsearch:7.17.0
bashdocker run -d --name graylog \ -p 9000:9000 \ -p ***:***/udp \ -p 514:514/udp \ -e "GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918" \ -e "GRAYLOG_HTTP_EXTERNAL_URI=http://localhost:9000/" \ --link mongo:mongo \ --link elasticsearch:elasticsearch \ graylog/graylog:5.1
说明:
GRAYLOG_ROOT_PASSWORD_SHA2为默认密码"admin"的SHA256哈希值,生产环境需替换为自定义密码的哈希值(可通过echo -n "yourpassword" | sha256sum生成)
推荐使用Docker Compose管理服务依赖,创建docker-compose.yml文件:
yamlversion: '3' services: mongo: image: mongo:5 volumes: - mongo_data:/data/db restart: always elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0 volumes: - es_data:/usr/share/elasticsearch/data environment: - discovery.type=single-node - ES_JAVA_OPTS=-Xms512m -Xmx512m restart: always graylog: image: graylog/graylog:5.1 volumes: - graylog_data:/usr/share/graylog/data environment: - GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918 - GRAYLOG_HTTP_EXTERNAL_URI=http://localhost:9000/ - GRAYLOG_MONGODB_URI=mongodb://mongo:27017/graylog - GRAYLOG_ELASTICSEARCH_HOSTS=[***] ports: - "9000:9000" # Web界面 - "***:***/udp" # GELF UDP - "514:514/udp" # Syslog UDP depends_on: - mongo - elasticsearch restart: always volumes: mongo_data: es_data: graylog_data:
启动服务:
bashdocker-compose up -d
常用环境变量说明:
| 环境变量 | 描述 | 默认值 |
|---|---|---|
GRAYLOG_ROOT_PASSWORD_SHA2 | 管理员密码的SHA256哈希值 | 无(必填) |
GRAYLOG_HTTP_EXTERNAL_URI | Web界面外部访问URL | http://localhost:9000/ |
GRAYLOG_MONGODB_URI | MongoDB连接URI | mongodb://mongo:27017/graylog |
GRAYLOG_ELASTICSEARCH_HOSTS | Elasticsearch节点URL | [***] |
GRAYLOG_TIMEZONE | 系统时区 | UTC |
GRAYLOG_PASSWORD_SECRET | 加密敏感数据的随机字符串 | 自动生成(生产环境建议自定义) |
部署完成后,通过http://<服务器IP>:9000访问Web界面,使用管理员账号(默认用户名admin,密码对应GRAYLOG_ROOT_PASSWORD_SHA2的明文值)登录,配置日志输入源和监控规则。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务