本文主要介绍在centos7 下经过docker安装sentrypython
sudo yum update
sudo tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/7/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg
sudo yum install docker-engine
sudo service docker start
sudo docker run hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from hello-world a8219747be10: Pull complete 91c95931e552: Already exists hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security. Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd1.7.1cf5daeb82aab55838d Status: Downloaded newer image for hello-world:latest Hello from Docker. This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (Assuming it was not already locally available.) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash For more examples and ideas, visit: http://docs.docker.com/userguide/
# 注意pip版本必定要python2.x sudo yum install epel-release sudo yum install -y python-pip sudo pip install docker-compose
测试安装。git
docker-compose --version docker-compose version 1.22.0, build 1719ceb
命令 | 说明 |
---|---|
docker-compose build | 构建容器 |
docker-compose restart | 重启 |
docker-compose ps | 查看当前服务 |
docker-compose up | 以日志方式启动服务 |
docker-compose up -d | 后台启动服务 |
docker-compose run --rm web upgrade | 运行新的迁移 |
sentry 依赖的组件比较多 包括 redis、 postgresql、 outbound email 在安装sentry前请确保 docker 版本大于1.10github
1.安装gitweb
sudo yum install git
2.下载docker镜像redis
git clone https://github.com/getsentry/onpremise.git
三、按git上的readme开始安装(网上别的教程都不是最新的,直接看readme便可) onpremise/README.md at master · getsentry/onpremise · GitHubsql
名称 | 描述 |
---|---|
sentry_cron | 定时任务,使用的是 celery-beat |
sentry_memcached | memcached |
sentry_postgres | pgsql数据库 |
sentry_redis | 运行celery须要的服务 |
sentry_smtp | 发邮件 |
sentry_web 使用 | django+drf写的一套 SentryWeb界面 |
sentry_worker | celery的worker服务,用来跑异步任务的 |
因为邮箱通知的时效性太差,不可以即便传递,因此使用钉钉机器人的群通知。docker
cd onpremise vi requirements.txt # 增长下面模块和版本号 redis-py-cluster==1.3.4
vi Dockerfile 添加 RUN pip install git+https://github.com/L3T/sentry-dingding.git FROM sentry:9.0-onbuild RUN pip install git+https://github.com/L3T/sentry-dingding.git
docker-compose build docker-compose restart
在项目集成中找到钉钉,并填写自定义机器人的webhook便可.数据库
# 在执行build时会报错,查找 redis_py_cluster-1.3.5版本的文件所有删除 find / -name "redis_py_cluster-1.3.5-py2.7.egg-info" #查找redis_py_cluster-1.3.5文件 # redis版本是2.10.5时会致使build时安装dingding插件失败,将redis删除,从新安装2.10.6版本 pip install redis==2.10.6 # 安装2.10.6版本 # 若是钉钉插件尚未,执行docker-compose up查看报错日志 docker-compose up
sentry自己自带了邮件通知,但若是你但愿有本身的邮箱发邮件的话.配置如下文件便可django
# vim docker-compose.yml x-defaults: &defaults restart: unless-stopped build: . depends_on: - redis - postgres - memcached - smtp env_file: .env environment: SENTRY_MEMCACHED_HOST: memcached SENTRY_REDIS_HOST: redis SENTRY_POSTGRES_HOST: postgres SENTRY_EMAIL_HOST: 'smtp.qq.com' SENTRY_EMAIL_USER: '48470673@qq.com' SENTRY_SERVER_EMAIL: '48470673@qq.com' SENTRY_EMAIL_PASSWORD: '这里是受权码' SENTRY_EMAIL_USE_TLS: 'true' SENTRY_EMAIL_PORT: 587 volumes: - sentry-data:/var/lib/sentry/files
docker-compose down docker-compose up -d
重启以后能够在 Admin==> 邮件下面找到邮箱的配置.ubuntu