北京神州网站建设,个人网站备案出现公司名字怎么办,尚义网站建设,官网定制公司安装 Docker 和 Docker-Compose
这里以 Ubuntu 22.04 举例#xff0c;如果你和我的系统一样#xff0c;那么可以照抄下面这个命令来快速安装 docker。如果不是#xff0c;你也可以 点击这里 来跳转到 Docker 官网来实现安装。
#!/bin/bash
apt-get update
apt-get -y inst…安装 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 [archamd64] 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 trueGraylog 密码生成
在 linux 系统下执行下面这个命令来生成 SHA-256 的密码
echo -n my_password | sha256sumwindows powershell 可以执行这个
echo -n my_password | certutil -hashfile - SHA256Docker Compose
修改下面配置中的 GRAYLOG_PASSWORD_SECRET 和 GRAYLOG_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.host0.0.0.0- transport.hostlocalhost- network.host0.0.0.0- ES_JAVA_OPTS-Xms512m -Xmx512m- TZAsia/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_SECRETsomepasswordpepper# 这里的 SHA-2 对应的密码原文为admin你需要修改它命令就是上面的 SHA 密码生成部分- GRAYLOG_ROOT_PASSWORD_SHA28c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918- GRAYLOG_HTTP_EXTERNAL_URIhttp://127.0.0.1:9000/- TZAsia/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’ 完整报错如下
rootgraylog:/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_versionFalse)[ApiVersion]File /usr/lib/python3/dist-packages/docker/api/daemon.py, line 181, in versionreturn self._result(self._get(url), jsonTrue)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 chunkedDuring handling of the above exception, another exception occurred:Traceback (most recent call last):File /usr/bin/docker-compose, line 33, in modulesys.exit(load_entry_point(docker-compose1.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_clientnot 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 requestrequests 2.31.0接下来只要安装一个合适的版本即可
pip install requests2.28.0