找回密码
 立即注册

QQ登录

只需一步,快速开始

本帖最后由 lou 于 2020-4-27 11:23 编辑

Geek专栏: 用 Docker 部署 Sentry Bug 日志收集服务



今天Geek专栏为大家带来
乐聚机器人王松博士的
“用Docker 部署 Sentry Bug 日志收集”

156.png

Sentry 是一个日志收集和统计平台, 由客户端和服务端组成,目前支持大部分主流的编程语言,并提供 SDK,当程序出现异常就向服务端发送消息,服务端将消息记录到数据库中并提供一个 Web端显示。

157.png

下面演示如何使用Docker 快速部署 Sentry 服务,并自定义一些配置。

系统环境

  1. 1  >> uname -a
  2. 2  Linux sentry 4.18.0-1018-azure #18~18.04.1-Ubuntu SMP Tue May 7 18:09:35 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
复制代码

安装 Docker

  1. 1  >> sudo apt install docker.io
  2. 2  >> sudo apt  install docker-compose
  3. 3  >> docker -v
  4. 5  Docker version 18.09.2, build 6247962
复制代码

部署 Docker 服务

Clone 代码

  1. 1  >> git clone https://github.com/getsentry/onpremise.git
  2. 2  >> cd onpremise
复制代码

挂载本地路径

为了方便数据迁移,挂载本地路径到 Docker 镜像
  • mkdir sentry-data: 创建Sentry 数据文件目录
  • mkdir sentry-postgres: 创建 Sentry数据库目录
  • config.yml: Sentry 用户自定义配置文件


配置邮箱与域名前缀

这里需要同时改动两个文件,config.yml docker-compose.yml

配置 config.yml

  1. 1  mail.backend: 'smtp'  # Use dummy if you want to disable email entirely
  2. 2  mail.host: 'smtp.exmail.qq.com'
  3. 3  mail.port: 587
  4. 4  mail.username: 'name@email.com'
  5. 5  mail.password: 'yourpassword'
  6. 6  mail.use-tls: true
  7. 7  mail.from: 'name@email.com'
  8. 8  system.url-prefix: 'http://your_domain.com'
复制代码

配置docker-compose.yml

  1. 1  x-defaults: &defaults
  2. 2    restart: unless-stopped
  3. 3    build: .
  4. 4    depends_on:
  5. 5      - redis
  6. 6      - postgres
  7. 7      - memcached
  8. 8      - smtp
  9. 9    env_file: .env
  10. 10    environment:
  11. 11      SENTRY_MEMCACHED_HOST: memcached
  12. 12      SENTRY_REDIS_HOST: redis
  13. 13      SENTRY_POSTGRES_HOST: postgres
  14. 14      SENTRY_SERVER_EMAIL: 'name@email.com'
  15. 15      SENTRY_EMAIL_HOST: 'smtp.exmail.qq.com'
  16. 16      SENTRY_EMAIL_PORT: 587
  17. 17      SENTRY_EMAIL_USER: 'name@email.com'
  18. 18      SENTRY_EMAIL_PASSWORD: 'yourpassword'
  19. 19      SENTRY_EMAIL_USE_TLS: 'true'
  20. 20      SENTRY_URL_PREFIX: 'http://your_domain.com'
复制代码

注意

  • 邮箱端口:腾讯企业邮箱的设置 SMTP 的端口是 465,但 sentry 只支持 tls ,所以使能 tls 并将端口改587。
  • 腾讯企业邮箱 mail.from 必须要和 mail.username 一致。
启动 Docker 服务

参考官方文档(https://github.com/getsentry/onpremise/blob/master/README.md
  • cp -n .env.example .env 创建环境配置文件
  • docker-compose build 构建 Docker 服务
  • docker-compose run --rm web config generate-secret-key 生成密钥,并将密钥添加至 .env
  • docker-compose run --rm web upgrade,构建数据库,过程中需要输入管理员信息
  • docker-compose up -d 在后台启动,docker-compose.yml 默认端口为 9000
  • 浏览器打开 http://localhost:9000,部署成功。
分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册