Docker部署Sentry
Docker部署Sentry
部署Sentry实例
1.启动Redis容器
docker run -d --name sentry-redis redis
2.启动Postgres容器
docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres
3.生成所有sentry容器共享的密钥
该值将用作 SENTRY_SECRET_KEY 环境变量
export SECRET_KEY=$(docker run --rm sentry config generate-secret-key|tail -n 1)
4.如果这是一个新数据库,则需要运行 upgrade
docker run -it --rm -e SENTRY_SECRET_KEY=${SECRET_KEY} --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
直接使用docker run 运行ubuntu的镜像时会出现 the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty' 的错误,前面加上winpty即可,即winpty docker run ---
winpty docker run -it --rm -e SENTRY_SECRET_KEY=${SECRET_KEY} --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
注意:这 -it 很重要,因为初始升级会提示创建初始用户,如果没有它则会失败
5.现在启动Sentry服务器
docker run -d -p 8080:9000 --name my-sentry -e SENTRY_SECRET_KEY=${SECRET_KEY} --link sentry-redis:redis --link sentry-postgres:postgres sentry
端口映射:如果希望能够在没有容器IP的情况下从主机访问实例,则可以使用标准端口映射。只需添加 -p 8080:9000 到docker run参数,然后在浏览器中访问或者 http://localhost:8080 或http://host-ip:8080。
6.启动调度器和worker(每个worker都有一个唯一的名称)
docker run -d --name sentry-cron -e SENTRY_SECRET_KEY=${SECRET_KEY} --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron
docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY=${SECRET_KEY} --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker
配置初始用户
如果您在此期间未创建超级用户upgrade,请使用以下命令创建一个:
docker run -it --rm -e SENTRY_SECRET_KEY=${SECRET_KEY} --link sentry-redis:redis --link sentry-postgres:postgres sentry createuser
环境变量
启动sentry映像时,可以通过在 docker run 命令行上传递一个或多个环境变量来调整Sentry实例的配置。请注意,这些环境变量是作为快速入门提供的,强烈建议您在自己的配置文件中安装或使用 sentry:onbuild 变体。
1.SENTRY_SECRET_KEY
用于Sentry中的加密功能的密钥。此密钥在所有正在运行的实例中应该是唯一且一致的。您可以生成一个新的密钥,例如:
docker run --rm sentry config generate-secret-key
2.SENTRY_POSTGRES_HOST,SENTRY_POSTGRES_PORT,SENTRY_DB_NAME,SENTRY_DB_USER,SENTRY_DB_PASSWORD
Postgres服务器的数据库连接信息。如果postgres存在链接容器,则不需要这些值。
3.SENTRY_REDIS_HOST,SENTRY_REDIS_PORT,SENTRY_REDIS_DB
Redis服务器的连接信息。如果redis存在链接容器,则不需要这些值。
4.SENTRY_MEMCACHED_HOST, SENTRY_MEMCACHED_PORT
Memcache服务器的连接信息。如果memcached存在链接容器,则不需要这些值。
5.SENTRY_FILESTORE_DIR
存储Sentry文件的目录。默认为 /var/lib/sentry/files, 是一个 VOLUME 可以持久化数据。
6.SENTRY_SERVER_EMAIL
From: 发送电子邮件中使用的电子邮件地址。默认:root@localhost
7.SENTRY_EMAIL_HOST,SENTRY_EMAIL_PORT,SENTRY_EMAIL_USER,SENTRY_EMAIL_PASSWORD,SENTRY_EMAIL_USE_TLS
发送smtp服务器的连接信息。如果smtp存在链接容器,则不需要这些值。
8.SENTRY_MAILGUN_API_KEY
如果您使用Mailgun作为入站邮件,请设置API密钥并配置转发到的路由 /api/hooks/mailgun/inbound/。
自定义镜像
该sentry镜像有许多种,每一个设计用于特定的使用情况。
1.sentry:<version>
这是事实上的镜像。如果您不确定您的需求是什么,您可能想要使用这个。它被设计为既可以用作丢弃容器(安装源代码并启动容器来启动应用程序),也可以用作构建其他镜像的基础。
2.sentry:onbuild
通过复制自定义 config.yml 或 sentry.conf.py 文件并安装插件,可以轻松自定义构建自己的Sentry实例 requirements.txt。
也可以在 onbuild 包中开发自定义扩展。如果构建目录包含 setup.py 文件,则也会安装该文件。
有关更多信息,请参阅Sentry官方文档。
要创建自定义sentry:onbuild程序包,只需执行以下操作:
1.创建一个包含的Dockerfile,基础镜像为 FROM sentry:onbuild
2.在同一目录中,添加自定义配置文件。
3.可以从docker-sentry GitHub repo获取这些文件的副本以用作模板。
4.构建你的镜像: docker build -t mysentry .
5.使用 mysentry 而不是运行自定义镜像sentry。
参考地址:http://blog.seekplum.top/docker-sentry-deploy/ https://hub.docker.com/_/sentry/
Docker部署Sentry相关推荐
- CentOS 使用 Docker 安装 Sentry
官网介绍:Sentry是一个实时事件日志记录和汇集的日志平台,其专注于错误监控,以及提取一切事后处理所需的信息.他基于Django开发,目的在于帮助开发人员从散落在多个不同服务器上的日志文件里提取发掘 ...
- 基于sentry的前端错误监控日志系统(部署sentry服务器/前端项目部署)-让前端最快的定位到生产问题...
背景 在这越来越发达的网络时代,web应用也是越来越复杂,尤其是前端的开发,也是越来越受重视. 所以在我们前端开发完成后,会有一些列的web应用的上线验证,如自测.QA测试.code review 等 ...
- 基于sentry的前端错误监控日志系统(部署sentry服务器/前端项目部署)-让前端最快的定位到生产问题
基于sentry的前端错误监控日志系统(部署sentry服务器/前端项目部署)-让前端最快的定位到生产问题 背景 在这越来越发达的网络时代,web应用也是越来越复杂,尤其是前端的开发,也是越来越受重视 ...
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
Docker 部署SpringBoot项目整合 Redis 镜像做访问计数Demo 最终效果如下 大概就几个步骤 1.安装 Docker CE 2.运行 Redis 镜像 3.Java 环境准备 4. ...
- Docker 部署SpringBoot项目不香吗?
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:流星007 链接:toutiao.com/i68433912 ...
- docker部署springboot_Docker+SpringBoot快速构建和部署应用
前言 Docker技术发展为当前流行的微服务提供了更加便利的环境,使用SpringBoot+Docker部署和发布应用,其实也是一件比较简单的事情.当前,前提是得有Docker的基础. 构建一个Spr ...
- docker初体验:docker部署nginx负载均衡集群
Docker 是一个用于开发,交付和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件.今天来为大家演示一下docker部署nginx负载均衡集群 环境 ce ...
- docker初体验:docker部署nginx服务
Docker 是一个用于开发,交付和运行应用程序的开放平台.Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件.今天来为大家演示一下docker部署nginx 环境 centos7 ...
- Docker系列 四.Docker部署SpringBoot
四.Docker部署SpringBoot 环境&工具: 阿里云轻量级服务器.CentOS 7系统.FinalShell(其他连接客户端也可以).IDEA 1. 创建springboot项目 这 ...
最新文章
- CF Theatre Square
- 【收藏】CMD命令提示符窗口中的快捷键、小技巧和常用命令
- hbase java api count_HBase内置过滤器java api的总结
- 盲人编程_帮助盲人学习编码
- 【渗透测试】SQL注入笔记
- ExtJs + .NET MVC 不分页处理大数据
- java制作安卓客户端,java做服务器,android干客户端,实现数据传输
- MT9700参考原理图
- node.js调用外部接口
- 【ACL 2019】预训练语言模型的最新探索
- ModuleNotFoundError: No module named xxx 解决办法
- java窗口布局_Java窗口(JFrame)从零开始(4)——流布局+边界布局+网格布局
- 样条曲线(参数曲线)曲率
- MyEclipse 7.0 + PHPEclipse下调试环境搭建(xDebug)
- 如何减小电压跟随器输出电阻_电压跟随器秘笈:LM358电压跟随器+运放问题
- 利用googlemap查询经纬度
- 史上最快最新最全倾斜摄影(ContextCapture)空三/建模、单机/集群硬件配置方案2018
- Liunx实现超级签名详细攻略(一)超级签名简介
- 事业单位计算机类专技岗职称,事业单位改革,专技岗和管理岗哪个好?
- 安卓统一推送联盟,终于有消息了,统一推送时间表出炉
热门文章
- 【Revit二次开发】应用程序和文档
- 安装 JAVA CRYPTOGRAPHY EXTENSION (JCE) UNLIMITED STRENGTH
- 游戏开发学习交流群,欢迎加入(875867499)
- 了解聚类是什么。聚类方法:k-means、核聚类、层次聚类、谱聚类
- matlab中将scope图转换为figure图
- 如何知道自己得了鼻炎?
- 猿创征文|在校大学生学习UI设计必备工具及日常生活中使用的软件
- SpringBoot实现STOMP协议下的WebSocket
- 时刻保持对生活不断探索的态度
- 即时通讯源码基IM源码内核开发采用[uniapp]封装技术