注: 本文不使用onpremise,参考docker-library
环境
sentry: 9.1.2
docker: 19.03.5
利用docker部署sentry
- 拉取镜像
docker pull redis
docker pull postgres
docker pull sentry
- 启动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
- 生成秘钥secret-key
docker run --rm sentry config generate-secret-key
保存好secret-key
- 初始化数据结构
过程中会让你添加超级管理员的用户名和密码
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
- 启动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
-
docker ps 查看容器状态
docker.png -
访问localhost:9000即可看到sentry登录页面
屏幕快照 2020-02-05 下午7.45.04.png
采坑
- onpremise
sentry官网推荐使用onpremise一键安装,但我的一直报错, 最后放弃这个方法!
屏幕快照 2020-02-05 下午7.50.54.png - 配置邮件
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
- 如何获取腾讯企业邮箱的授权码
邮箱需是以
微信的方式登录进去,而不是以账号密码的方式-
进入通讯企业邮箱,我是在网页版上弄的,点击
设置,选邮箱绑定
屏幕快照 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





