文章目录
官方项目文档:
https://github.com/getsentry/self-hosted
Sentry 介绍
Sentry 是一个日志平台,分为客户端和服务端,客户端(目前客户端有Python, PHP,C#, Ruby等多种语言)就嵌入在你的应用程序中间,程序出现异常就向服务端发送消息,服务端将消息记录到数据库中并提供一个web节目方便查看。Sentry由python编写,源码开放,性能卓越,易于扩展,目前著名的用户有Disqus, Path, mozilla, Pinterest等
部署配置要求
- Docker 19.03.6+
- Compose 1.28.0+
- 4 CPU Cores
- 8 GB RAM
- 20 GB Free Disk Space
环境设置
环境特定的配置可以在.env.custom文件中完成。它将位于 Sentry 安装的根目录中。
默认情况下,不存在.env.custom文件。在这种情况下,您可以通过将文件复制.env到新.env.custom文件并调整文件中的设置来手动添加此.env.custom文件。
.env当您执行 Sentry 升级时,请记住检查文件是否有更改,以便您可以.env.custom根据需要进行相应的调整。
部署组件
- sentry
- nginx
- kafka
- zookeeper
- redis
- memcache
- clickhouse
Docker 及Docker-compose安装
Docker版本要求19.03.6+
,Compose版本要求1.28.0+
#使用脚本安装docker
export VERSION=19.03
curl -fsSL "https://get.docker.com/" | bash -s -- --mirror Aliyun
#安装Docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
#abcdocker提供国内下载地址(网络不好可以使用我提供地址)
curl https://d.frps.cn/file/tools/sentry/docker-compose -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
查看版本号
[root@abcdocker ~]# docker-compose -version
docker-compose version 1.29.2, build 5becea4c
[root@abcdocker ~]# docker version
Client: Docker Engine - Community
Version: 19.03.15
API version: 1.40
Go version: go1.13.15
Git commit: 99e3ed8919
Built: Sat Jan 30 03:17:57 2021
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.15
API version: 1.40 (minimum version 1.12)
Go version: go1.13.15
Git commit: 99e3ed8919
Built: Sat Jan 30 03:16:33 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.12
GitCommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.18.0
GitCommit: fec3683
安装配置Sentry
接下来我们下载官方Sentry一键脚本
wget https://d.frps.cn/file/tools/sentry/self-hosted-master.zip
unzip self-hosted-master.zip
cd self-hosted-master/
./install.sh
接下来进入等待环节
创建用户
执行Y我们创建一个管理员用户
安装完成我们执行docker-compose up -d
运行服务
访问
接下来我们就可以通过IP:9000
端口访问
用户名: im@i4t.com
密码:123456789
#我这里设置为如上
下面这里是配置域名smtp等信息,建议域名直接配置好,不建议这里写IP地址
首页效果图
配置Nginx 开启SSL
接下来我们配置Nginx,并开启SSL证书
yum install pcre pcre-devel openssl openssl-devel gcc gcc-c++ automake autoconf libtool make wget vim lrzsz -y
cd /opt/
wget http://nginx.org/download/nginx-1.14.1.tar.gz
tar xf nginx-1.14.1.tar.gz
cd /opt/nginx-1.14.1
./configure --prefix=/opt/nginx/ --with-pcre --with-http_ssl_module --with-http_stub_status_module --with-stream --with-http_stub_status_module --with-http_gzip_static_module && make && make install
#配置nginx.conf
cat >/opt/nginx/conf/nginx.conf<<EOF
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
proxy_pass http://127.0.0.1:9000;
}
}
# HTTPS server
server {
listen 443 ssl;
server_name localhost;
#ssl_certificate cert.pem;
#ssl_certificate_key cert.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
proxy_pass http://127.0.0.1:9000;
}
}
}
EOF
#启动nginx
[root@abcdocker conf]# /opt/nginx/sbin/nginx -t
我这里没有配置域名,就用ip 80端口演示