Ubuntu 22.04 通过 Docker 启动 Graylog

安装 Docker 和 Docker-Compose

这里以 Ubuntu 22.04 举例,如果你和我的系统一样,那么可以照抄下面这个命令来快速安装 docker。如果不是,你也可以 点击这里 来跳转到 Docker 官网来实现安装。

#!/bin/bash
apt-get update
apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
echo | add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
apt-get update
apt-get -y install docker-ce docker-ce-cli containerd.io

接下来需要安装 Docker-Compose

apt update
apt install docker-compose

将一些配置文件和数据文件映射到本地

mkdir -p /home/graylog/mongo_data && chmod -R +777 /home/graylog/mongo_data
mkdir -p /home/graylog/es_data && chmod -R +777 /home/graylog/es_data
mkdir -p /home/graylog/graylog_data && chmod -R +777 /home/graylog/graylog_data
mkdir -p /home/graylog/graylog_data/config
cd /home/graylog/graylog_data/config 
wget https://raw.githubusercontent.com/Graylog2/graylog-docker/4.2/config/graylog.conf
wget https://raw.githubusercontent.com/Graylog2/graylog-docker/4.2/config/log4j2.xml
chown -R 1100:1100 /home/graylog/graylog_data
cd /home/graylog

如果上面的文件下载(wget命令)不了,那么可以先通过别的手段下载下来,然后上传到服务器对应的位置即可。

修改 Graylog 配置文件

接下来执行 vim graylog.conf,内容改成下面这个

root_timezone = PRC
allow_highlighting = true

Graylog 密码生成

在 linux 系统下执行下面这个命令来生成 SHA-256 的密码

echo -n "my_password" | sha256sum

windows powershell 可以执行这个

echo -n my_password | certutil -hashfile - SHA256

Docker Compose

修改下面配置中的 GRAYLOG_PASSWORD_SECRETGRAYLOG_ROOT_PASSWORD_SHA2

version: '3'
services:# MongoDB: https://hub.docker.com/_/mongo/mongodb:image: mongo:4.2volumes:- /home/graylog/mongo_data:/data/db- /etc/localtime:/etc/localtime:ro- /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone:ro# Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docker.htmlelasticsearch:image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2volumes:- /home/graylog/es_data:/usr/share/elasticsearch/data- /etc/localtime:/etc/localtime:ro- /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone:roenvironment:- http.host=0.0.0.0- transport.host=localhost- network.host=0.0.0.0- "ES_JAVA_OPTS=-Xms512m -Xmx512m"- TZ=Asia/Shanghaiulimits:memlock:soft: -1hard: -1# Graylog: https://hub.docker.com/r/graylog/graylog/graylog:image: graylog/graylog:4.2volumes:- /home/graylog/graylog_data:/usr/share/graylog/data- /etc/localtime:/etc/localtime:ro- /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone:roenvironment:# 密码的盐,可以随机生成一个,至少需要 16 个字符- GRAYLOG_PASSWORD_SECRET=somepasswordpepper# 这里的 SHA-2 对应的密码原文为:admin,你需要修改它,命令就是上面的 SHA 密码生成部分- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918- GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9000/- TZ=Asia/Shanghaientrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 --  /docker-entrypoint.shlinks:- mongodb:mongo- elasticsearchrestart: alwaysdepends_on:- mongodb- elasticsearchports:# Graylog web interface and REST API- 9000:9000# Syslog TCP- 1514:1514# Syslog UDP- 1514:1514/udp# GELF TCP- 12201:12201# GELF UDP- 12201:12201/udp

执行下面这个命令就可以启动了,-d 代表后台启动,如果你想要在台前看一下启动的过程,那么你可以去掉这个参数。

docker-compose up -d

异常情况:

ubuntu 22.04 在执行 docker-compose up 的时候,可能会抛出如下错误,主要的原因是:
docker.errors.DockerException: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument ‘chunked’
完整报错如下:

root@graylog:/home/graylog# docker-compose up
Traceback (most recent call last):File "/usr/lib/python3/dist-packages/docker/api/client.py", line 214, in _retrieve_server_versionreturn self.version(api_version=False)["ApiVersion"]File "/usr/lib/python3/dist-packages/docker/api/daemon.py", line 181, in versionreturn self._result(self._get(url), json=True)File "/usr/lib/python3/dist-packages/docker/utils/decorators.py", line 46, in innerreturn f(self, *args, **kwargs)File "/usr/lib/python3/dist-packages/docker/api/client.py", line 237, in _getreturn self.get(url, **self._set_request_timeout(kwargs))File "/usr/local/lib/python3.10/dist-packages/requests/sessions.py", line 602, in getreturn self.request("GET", url, **kwargs)File "/usr/local/lib/python3.10/dist-packages/requests/sessions.py", line 589, in requestresp = self.send(prep, **send_kwargs)File "/usr/local/lib/python3.10/dist-packages/requests/sessions.py", line 703, in sendr = adapter.send(request, **kwargs)File "/usr/local/lib/python3.10/dist-packages/requests/adapters.py", line 486, in sendresp = conn.urlopen(File "/usr/local/lib/python3.10/dist-packages/urllib3/connectionpool.py", line 790, in urlopenresponse = self._make_request(File "/usr/local/lib/python3.10/dist-packages/urllib3/connectionpool.py", line 496, in _make_requestconn.request(
TypeError: HTTPConnection.request() got an unexpected keyword argument 'chunked'During handling of the above exception, another exception occurred:Traceback (most recent call last):File "/usr/bin/docker-compose", line 33, in <module>sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 81, in maincommand_func()File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 200, in perform_commandproject = project_from_options('.', options)File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 60, in project_from_optionsreturn get_project(File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 152, in get_projectclient = get_client(File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 41, in get_clientclient = docker_client(File "/usr/lib/python3/dist-packages/compose/cli/docker_client.py", line 170, in docker_clientclient = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)File "/usr/lib/python3/dist-packages/docker/api/client.py", line 197, in __init__self._version = self._retrieve_server_version()File "/usr/lib/python3/dist-packages/docker/api/client.py", line 221, in _retrieve_server_versionraise DockerException(
docker.errors.DockerException: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument 'chunked'

这个错误是 python 的 request 包的版本不正确导致的,你可以执行下面这个命令来查看你本地的 request 包的版本

pip list |grep request
> requests 2.31.0

接下来只要安装一个合适的版本即可:

pip install requests==2.28.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/58337.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搭建vue项目环境之二(完成基础环境的搭建之后开始正式安装)

由于工作太忙了&#xff0c;一直都是东奔西跑的&#xff0c;好多知识都是零散的&#xff0c;最近刚好有空&#xff0c;就计划利用这个空闲时间认真的整理以前学过的知识&#xff0c;帮助自己回顾过往&#xff0c;中间也难免有很多错误&#xff0c;欢迎指正挑刺。一直以来都是万…

【单片机】有人WH-LTE-7S1 4G cat1 模块连接服务器,教程,记录

文章目录 4G cat1 模块封装引脚名称功能拓扑图串口模块调试WH-LTE-7S1 4G cat1 模块 我买的这个模块内置了电信卡&#xff0c;不用插电话卡就能用&#xff0c;要插也行&#xff0c;在背面。 ⚫ 5-16V 宽电压供电 ⚫ LTE Cat 1&#xff0c;搭载 4G 网络&#xff0c;低时延&…

继承AndroidView Model的错误

ViewModelProvider(this)[RegisterViewModel::class.java] 一行简单的代码&#xff0c;总是报这个错误 Caused by: java.lang.NoSuchMethodException: com.xinfa.registerlogin.viewmodel.LoginViewModel. [class android.app.Application] 经过一下午的思索&#xff0c;终于找…

RocketMQ mqadmin java springboot python 调用笔记

命令 mqadmin命令列表 yeqiangyeqiang-MS-7B23:/opt/rocketmq-all-5.1.3-bin-release$ sh bin/mqadmin The most commonly used mqadmin commands are:updateTopic Update or create topicdeleteTopic Delete topic from broker and NameServer.…

Java集合sort排序报错UnsupportedOperationException处理

文章目录 报错场景排查解决UnmodifiableList类介绍 报错场景 我们使用的是PostgreSQL数据库&#xff0c;存储业务数据&#xff0c;业务代码使用的是Spring JPA我们做的是智慧交通信控平台&#xff0c;有个功能是查询展示区域的交通态势&#xff0c;需要按照不同维度排序展示区…

执行jmeter端口不够用报错(Address not available)

执行jmeter端口不够用报错(Address not available) linux解决方案 // 增加本地端口范围 echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range// 启用快速回收TIME_WAIT套接字 sudo sysctl -w net.ipv4.tcp_tw_recycle1// 启用套接字的重用 sudo sysctl -w net.ipv4.t…

javeee spring cglib动态代理

cglib动态代理 依赖 <dependency><groupId>cglib</groupId><artifactId>cglib-nodep</artifactId><version>3.2.4</version></dependency>代理类 package com.test.cglibProxy;import net.sf.cglib.proxy.Enhancer; import …

【简单bat】写一个定时关机的批处理程序

感谢我那可爱的GPT助手对代码的优化工作。 echo off REM Author: liyang TEL 155-4089-9552echo 欢迎使用自动关机计划设置脚本&#xff01;by LiYang echo.:choose_action set /p "action_choice请选择要执行的操作&#xff08;输入1设置定时关机任务&#xff0c;输入2删…

循环结构(个人学习笔记黑马学习)

while循环语句 在屏幕中打印0~9这十个数字 #include <iostream> using namespace std;int main() {int i 0;while (i < 10) {cout << i << endl;i;}system("pause");return 0; } 练习案例: 猜数字 案例描述:系统随机生成一个1到100之间的数字&…

远程教育:别催了,在线巡课真爽啊

随着远程教育和在线学习的兴起&#xff0c;教学活动的场景正逐渐从传统的实体教室转向虚拟的线上平台&#xff0c;这也催生了对教学质量监管的新需求。 在线巡课系统在这一背景下应运而生&#xff0c;它不仅能够实时观察教师的教学过程&#xff0c;还能够量化评估教学效果&…

ADS 错误 1808可能原因 ADSError 1808

​ 调试问题记录&#xff1a; 背景&#xff1a; Ads调试时遇到错误&#xff0c;返回码是 1808&#xff0c;查询倍福官网 得出1808错误原因是 symbol not found 原因&#xff1a; ADSError: symbol not found (1808). Possible incorrect runtime port selected 可能是ads的地…

极氪汽车的云资源治理细探

作者&#xff1a;极氪汽车吴超 前言 2021 年&#xff0c;极氪 001 迅速崭露头角&#xff0c;仅用 110 天便创下了首款车型交付量“最快破万”的纪录。2022 年 11 月&#xff0c;极氪 009 在短短 76 天内便率先完成了首批交付&#xff0c;刷新了中国豪华纯电品牌交付速度的纪录…

MYSQL中的COLLATE(COLLATION)是什么?

#字符集 character_set_server utf8mb4 collation_server utf8mb4_general_ci 其实是用来排序的规则。对于mysql中那些字符类型的列&#xff0c;如VARCHAR&#xff0c;CHAR&#xff0c;TEXT类型的列&#xff0c;都需要有一个COLLATE类型来告知mysql如何对该列进行排序和比较…

内网实战1

1、信息收集&#xff1a; 使用nmap做端口扫描&#xff1a; nmap -sV -Pn -T4 192.168.26.174重要端口&#xff1a;80、445、139、135、3306 目录扫描&#xff1a; 访问80端口&#xff1a;发现一个网站是phpstudy搭建的&#xff1b; 发现一个mysql数据库&#xff0c;那我们…

lintcode 1063 · 我的日历III 【hard 线段树】

题目链接&#xff0c;描述 https://www.lintcode.com/problem/1063 实现一个MyCalendarThree 来储存你的时间。一个新的事件 总是 可以被加入。你的类会有一种方法&#xff1a;book(int start, int end)。 正式的说&#xff0c;这代表在一个半开区间 [start, end) 上进行预订…

11-Manager 和 模型Model

准备工作: 一. Manager 库: Manager: 用于管理相关操作端命令和使用相关操作端命令 (1). 安装flask-script: pip install flask-script2.0.3 (2). 在app.py中 包装 app from apps import create_app# Manager类用于管理相关操作端命令和使用相关操作端命令 from flask_scrip…

Unity实现UI图片面板滚动播放效果第二弹

效果&#xff1a; 场景结构&#xff1a; 特殊物体&#xff1a;panel下面用排列组件horizent layout group放置多个需要显示的面板&#xff0c;用mask遮罩好。 主要思路&#xff1a; 这次是要在最后一个toggle的地方&#xff0c;依然向左滚动回1&#xff0c;这是难点。因此实际…

目标检测项目中,使用python+xml.etree.ElementTree修改xml格式标注文件中的类别名称

需求&#xff1a; 数据集的数据增强中&#xff0c;有时需要将xml标注文件中的类别做修改为新类别&#xff0c;或者将几个类别合并为一个类别。 解决方法&#xff1a; 使用pythonimport xml.etree.ElementTree将xml标注文件中的类别名称做修改。代码如下&…

CTFhub-sqli注入-报错注入

用到的函数 updatexml(1&#xff0c; &#xff0c;1) concat(0x7e, ,0x7e) group_concat(目标值) right(&#xff0c;32) 1 1 1 union select updatexml(1,concat(0x7e,database(),0x7e),1) 1 union select updatexml(1,concat(0x7e,(select(group_concat(ta…

Elasticsearch基础

1、简介 Elasticsearch是实时的分布式搜索分析引擎&#xff0c;内部使用Lucene做索引与搜索。 何谓实时&#xff1f;新增到 ES 中的数据在1秒后就可以被检索到&#xff0c;这种新增数据对搜索的可见性称为“准实时搜索”。分布式意味着可以动态调整集群规模&#xff0c;弹性扩…