docker搭建sentry

安装方式

Python安装
Docker 安装 接下来是介绍在centeos 用 docker 安装

注意事项

  • 服务器的内存至少 8G,否则在执行 sentry upgrade 命令时会出现问题
    Docker 版本要在17.05.0+
    Compose 版本要在1.23.0+

一、Docker的安装

1.1更新软件源

sudo apt-get update

1.2安装所需的包

sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

1.3添加Docker的官方GPG密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

1.4设置稳定版仓库

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

1.5再次更新软件源并安装Docker CE

sudo apt-get update
sudo apt-get install docker-ce

1.6验证安装

sudo systemctl status docker

如果显示的信息中包含 active (running),则表示Docker已成功安装。
在这里插入图片描述

二、Docker-Compose的安装

2.1下载Docker-Compose的当前稳定版本

sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep 'tag_name' | cut -d\" -f4)/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2.2赋予可执行权限

sudo chmod +x /usr/local/bin/docker-compose

2.3验证安装

docker-compose --version

显示版本信息表示安装成功。
在这里插入图片描述

三、安装git

yum install git

四、安装sentry

官方制作的自动化安装脚本,sentry组件非常多,如下图所示。所以不要想自己一个个去装,能要你命!!!(目前安装成功的版本为self-hosted-23.7.0,其余版本运行./install.sh下载依赖安装时,均会报错,提示依赖下载失败…(某原因))
(下面有安装成功版本的百度网盘链接,有需要的铁铁可以自取)

4.1git拉取sentry安装组件

git clone https://github.com/getsentry/onpremise.git
这个是旧的
git https://github.com/getsentry/self-hosted.git
这个是新仓库
两个地址可以拉取,网上大多数都是旧的,后面估计仓库迁移了,但旧的也能用。

百度网盘组件安装包:

链接:https://pan.baidu.com/s/1ARsjAJze-x-pxoBey991KA?pwd=7734 提取码:7734
–来自百度网盘超级会员V6的分享

4.2切换docker镜像

部分docker镜像源国内访问较慢,下面附上几个常用镜像源

cd /etc/docker
vim daemon.json

daemon.json配置文件内容

{
  "registry-mirrors": [
    "http://registry.docker-cn.com",
    "http://docker.mirrors.ustc.edu.cn",
    "http://hub-mirror.c.163.com",
    "https://82ywvjs9.mirror.aliyuncs.com",
    "https://mirror.ccs.tencentyun.com",
    "https://hkoa9dfz.mirror.aliyuncs.com",
    "https://cr.console.aliyun.com",
    "https://registry.cn-hangzhou.aliyuncs.com",
    "https://mirrors.huaweicloud.com/",
    "http://f1361db2.m.daocloud.io"
  ],
  "max-concurrent-downloads": 100,
  "log-driver": "json-file",
  "log-level": "warn",
  "log-opts": {
    "max-size": "1000m",
    "max-file": "300"
    },
  "data-root": "/var/lib/docker"
}

4.3解压安装

unzip 23.7.0.zip
cd self-hosted-23.7.0/

在self-hosted-23.7.0路径下运行./install.sh

sudo ./install.sh

出现超时情况,可以多次重试./install.sh命令来尝试解决。

4.4创建初始帐号

安装快结束的时候会提示你是否现在注册账户,我这里选择是(输入y),接着输入对应信息即可。
在这里插入图片描述

在这里插入图片描述

不小心点了 n 咋办?
运行下述代码,设置管理员账号密码

docker-compose run --rm sentry createuser --email (你的邮箱) --password (你的密码) --superuser

4.5启动sentry

docker compose up -d

在这里插入图片描述

可以看到启动的服务贼多…
注意一定得在self-hosted-23.7.0(sentry解压目录)文件目录下执行

打开浏览器输入IP地址+端口号9000就可以访问Sentry登录界面了。
在这里插入图片描述

4.6邮箱配置

在这里插入图片描述
进入self-hosted-23.7.0/sentry目录下,编辑config.yml
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

着重讲解一下几个配置项

  • mail.backend: ‘smtp’
  • mail.host:邮件服务域名
  • mail.port:587/465 我是企业邮箱(465)
  • mail.username:邮箱登录名
  • mail.use-tls:我是false。
  • mail.use-ssl:我是true,一般ssl协议对应端口为587,但我测试下来是能成功发送的。
  • mail.password:不是邮箱登录密码,是邮箱给的IMAP/SMTP服务密码
  • mail.from:与mail.username要一致

其中 mail.use-tls 、mail.use-ssl 二选一来配置

示例 QQ邮箱配置使用 tls类型的(我这边没测试成功....)

mail.backend: 'smtp'
mail.host: 'smtp.qq.com'
mail.port: 587
mail.username: '123456@qq.com'
mail.password: '是秘钥 不是登录密码'
mail.use-tls: true
mail.use-ssl: false
mail.from: '123456@qq.com'

以上配置都是可以在自己qq邮箱中找到并且设置的

附如何获取qq邮箱账户密钥

登录qq邮箱首页
点击账号与安全
在这里插入图片描述
在这里插入图片描述

示例 企业邮箱配置使用 ssl类型的

mail.backend: 'smtp'
mail.host: 'smtp.exmail.qq.com'
mail.port: 465
mail.username: '122@test.com'
mail.password: '是秘钥 不是登录密码'
mail.use-tls: false
mail.use-ssl: true
mail.from: '122@test.com'

配置完毕后保存 重新启动sentry

docker-compose down
docker-compose up -d

启动完毕后可以刷新一下邮箱配置页面 就可以看到改变了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、Springboot项目引入sentry

5.1新建sentry项目

5.2pom.xml引入依赖

    <!--        sentry-->
    <dependency>
        <groupId>io.sentry</groupId>
        <artifactId>sentry-spring-boot-starter</artifactId>
        <version>6.4.1</version>
    </dependency>
    <dependency>
        <groupId>io.sentry</groupId>
        <artifactId>sentry-logback</artifactId>
        <version>6.4.1</version>
    </dependency>

5.3配置DNS

application.properties:

sentry.dsn=http://aa1f397e403f4996be0fe1503e6a4a7a@192.168.128.137:9000/7
# Set traces-sample-rate to 1.0 to capture 100% of transactions for performance monitoring.
# We recommend adjusting this value in production.
sentry.traces-sample-rate=1.0

application.yml

sentry:
  dsn:http://aa1f397e403f4996be0fe1503e6a4a7a@192.168.128.137:9000/7
  # Set traces-sample-rate to 1.0 to capture 100% of transactions for performance monitoring.
  # We recommend adjusting this value in production.
  traces-sample-rate: 1.0

5.4配置全局异常捕获

@ControllerAdvice
public class GlobalExceptionHandler {

    @ExceptionHandler(ServiceException.class)
    @ResponseBody
    public Result handle(ServiceException se){
        Sentry.captureException(se); //将异常信息发送至sentry服务
        return Result.error(se.getCode(),se.getMessage());
    }
}
  • 34
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是在群晖Docker上部署Sentry的步骤: 1. 在Docker中搜索Sentry镜像并下载。 2. 创建一个Docker容器并将Sentry镜像安装在其中。在创建容器时,需要将主机的/dev目录挂载到容器的/dev目录中,以便容器可以访问主机上的USB设备。 3. 配置Sentry。可以通过编辑配置文件或使用Sentry的Web界面来完成配置。 4. 启动Sentry容器并访问Web界面。 下面是具体的步骤: 1. 打开Docker并搜索Sentry镜像。可以在Docker的“映像”选项卡中搜索Sentry。 2. 创建一个Docker容器并将Sentry镜像安装在其中。在创建容器时,需要将主机的/dev目录挂载到容器的/dev目录中,以便容器可以访问主机上的USB设备。可以使用以下命令创建容器: ```shell docker run -d --name sentry -p 9000:9000 --restart always -v /dev:/dev sentry ``` 这将创建一个名为“sentry”的容器,并将Sentry镜像安装在其中。容器将在端口9000上运行,并且将主机的/dev目录挂载到容器的/dev目录中。 3. 配置Sentry。可以通过编辑配置文件或使用Sentry的Web界面来完成配置。可以使用以下命令进入容器: ```shell docker exec -it sentry bash ``` 然后可以编辑配置文件或使用Sentry的Web界面来完成配置。 4. 启动Sentry容器并访问Web界面。可以使用以下命令启动容器: ```shell docker start sentry ``` 然后可以在Web浏览器中访问Sentry的Web界面,地址为:http://<主机IP地址>:9000。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值