Sentry的docker部署过程

注: 本文不使用onpremise,参考docker-library

环境

sentry: 9.1.2
docker: 19.03.5

利用docker部署sentry
  1. 拉取镜像
docker pull redis
docker pull postgres
docker pull sentry
  1. 启动redis和postgres
docker run -d --name sentry-redis --restart=always redis
docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry --restart=always postgres 
  1. 生成秘钥secret-key
docker run --rm sentry config generate-secret-key

保存好secret-key

  1. 初始化数据结构
    过程中会让你添加超级管理员的用户名和密码
docker run -it --rm -e SENTRY_SECRET_KEY='5%s2t5_*1_5i296h(cdmban@z%0a)q#cj(z2=^o(xk9w9*4lq3' -e SENTRY_SERVER_EMAIL='test@qq.com' -e SENTRY_EMAIL_HOST='smtp.exmail.qq.com' -e SENTRY_EMAIL_PORT='587' -e SENTRY_EMAIL_USER='test@qq.com' -e SENTRY_EMAIL_PASSWORD='********' -e SENTRY_EMAIL_USE_TLS=true --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
  1. 启动sentry的三个容器
// -p 可指定端口
docker run -d -p 9000:9000 --name my-sentry -e SENTRY_SECRET_KEY='5%s2t5_*1_5i296h(cdmban@z%0a)q#cj(z2=^o(xk9w9*4lq3' -e SENTRY_SERVER_EMAIL='test@qq.com' -e SENTRY_EMAIL_HOST='smtp.exmail.qq.com' -e SENTRY_EMAIL_PORT='587' -e SENTRY_EMAIL_USER='test@qq.com' -e SENTRY_EMAIL_PASSWORD='********' -e SENTRY_EMAIL_USE_TLS=true --link sentry-redis:redis --link sentry-postgres:postgres sentry 

docker run -d --name sentry-cron -e SENTRY_SECRET_KEY='5%s2t5_*1_5i296h(cdmban@z%0a)q#cj(z2=^o(xk9w9*4lq3' -e SENTRY_SERVER_EMAIL='test@qq.com' -e SENTRY_EMAIL_HOST='smtp.exmail.qq.com' -e SENTRY_EMAIL_PORT='587' -e SENTRY_EMAIL_USER='test@qq.com' -e SENTRY_EMAIL_PASSWORD='********' -e SENTRY_EMAIL_USE_TLS=true --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron 

docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY='5%s2t5_*1_5i296h(cdmban@z%0a)q#cj(z2=^o(xk9w9*4lq3' -e SENTRY_SERVER_EMAIL='test@qq.com' -e SENTRY_EMAIL_HOST='smtp.exmail.qq.com' -e SENTRY_EMAIL_PORT='587' -e SENTRY_EMAIL_USER='test@qq.com' -e SENTRY_EMAIL_PASSWORD='********' -e SENTRY_EMAIL_USE_TLS=true --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker 
  1. docker ps 查看容器状态


    docker.png
  2. 访问localhost:9000即可看到sentry登录页面


    屏幕快照 2020-02-05 下午7.45.04.png
采坑
  1. onpremise
    sentry官网推荐使用onpremise一键安装,但我的一直报错, 最后放弃这个方法!
    屏幕快照 2020-02-05 下午7.50.54.png
  2. 配置邮件
    docker run -e 后跟的是环境变量,sentry具体的环境变量可参考docker-library
    我使用的是腾讯企业邮箱,在运行上面的4、5步骤时,我把邮箱的相关环境变量都加上了,以下是对配置的说明:
SENTRY_EMAIL_HOST: smtp.exmail.qq.com
SENTRY_EMAIL_USER: 你的邮箱
SENTRY_EMAIL_EMAIL: 你的邮箱
SENTRY_EMAIL_PASSWORD: 你的邮箱的授权码,而不是登录密码
SENTRY_EMAIL_USE_TLS:  true
SENTRY_EMAIL_PORT: 587
  1. 如何获取腾讯企业邮箱的授权码
  • 邮箱需是以微信的方式登录进去,而不是以账号密码的方式

  • 进入通讯企业邮箱,我是在网页版上弄的,点击设置,选邮箱绑定

    屏幕快照 2020-02-05 下午8.01.04.png

  • 绑定微信,应该会出来一个二维码,用手机微信扫一下就好


    屏幕快照 2020-02-05 下午8.04.17.png
  • 页面下方客户端专用密码,点击生成新密码即会弹出一个框,生成一个16位的授权密码,点击复制,拷贝给SENTRY_EMAIL_PASSWORD环境变量即可

    屏幕快照 2020-02-05 下午8.08.32.png

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容