美文网首页
ubuntu 部署 sentry 及简单应用

ubuntu 部署 sentry 及简单应用

作者: 入间 | 来源:发表于2018-07-09 19:50 被阅读0次

    1 安装docker

    开始安装

    • 由于apt官方库里的docker版本可能比较旧,所以先卸载可能存在的旧版本:
    $ sudo apt-get remove docker docker-engine docker-ce docker.io
    
    • 更新apt包索引:
    $ sudo apt-get update
    
    • 安装以下包以使apt可以通过HTTPS使用存储库(repository):
    $ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
    
    • 添加Docker官方的GPG密钥:
    $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
    • 使用下面的命令来设置stable存储库:
    $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
    
    • 再更新一下apt包索引:
    $ sudo apt-get update
    
    • 安装最新版本的Docker CE:
    $ sudo apt-get install -y docker-ce
    
    • 在生产系统上,可能会需要应该安装一个特定版本的Docker CE,而不是总是使用最新版本:

    列出可用的版本:

    $ apt-cache madison docker-ce
    

    选择要安装的特定版本,第二列是版本字符串,第三列是存储库名称,它指示包来自哪个存储库,以及扩展它的稳定性级别。要安装一个特定的版本,将版本字符串附加到包名中,并通过等号(=)分隔它们:

    $ sudo apt-get install docker-ce=<VERSION> # 随意选择一个版本即可 
    

    验证docker

    • 查看docker服务是否启动:
    $ systemctl status docker
    
    • 若未启动,则启动docker服务:
    $ sudo systemctl start docker
    
    • 经典的hello world:
    $ sudo docker run hello-world
    

    安装docker-compose

    如果没有pip 先安装pip

    sudo apt-get install python-pip

    sudo pip install docker-compose

    2.sentry部署

    (1)构建容器

    $ sudo apt-get install git
    $ git clone https://github.com/getsentry/onpremise.git
    $ cd onpremise
    

    (2)cd onpremise,执行命令生成key

    注意:以下所有的目录,都是要在onpremise下执行的

    docker-compose run --rm web config generate-secret-key
    

    在这里可能会报错,如下所示

    ERROR: Couldn't connect to Docker daemon at http://localhost:4243 - is it running?

    解决方法如下:

    • 配置/lib/systemd/system/docker.service

    sudo vim /lib/systemd/system/docker.service

    这里的0.0.0.0根据自己的需求配置是否只需要配置本地

    ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:4243

    • 配置/etc/default/docker

    sudo vim /etc/default/docker

    DOCKER_OPTS="-H tcp://localhost:4243 -H unix:///var/run/docker.sock

    • DOCKER_HOST的环境变量设置

    sudo vim /etc/profile 或者 sudo vim ~/.bashrc

    export DOCKER_HOST=tcp://localhost:4243

    • 重启docker

    systemctl daemon-reload

    sudo service docker restart

    • 然后重新执行

    docker-compose run --rm web config generate-secret-key

    然后就是等待,时间比较长,大概半小时.

    执行完后会生成一个key,复制这个key

    (3)将key添加到docker-compose文件里

    sudo vim docker-compose.yml

    # 取消SENTRY_SECRET_KEY的注释,并把刚刚复制的字符串插入其中,类似如下:
    version: '2'
    services:
      base:
        restart: unless-stopped
        build: .
        environment:
          # Run `docker-compose run web config generate-secret-key`
          # to get the SENTRY_SECRET_KEY value.
          SENTRY_SECRET_KEY: '8kn@wvg)qcm5ufg9sanfdada6qn)-0rd^%8j)@m4h=kxn(t)sv'
          SENTRY_MEMCACHED_HOST: memcached
          SENTRY_REDIS_HOST: redis
          SENTRY_POSTGRES_HOST: postgres
          SENTRY_EMAIL_HOST: smtp
    

    (4)重建数据库,并创建sentry超级管理员用户

    docker-compose run --rm web upgrade

    这里会持续大概半小时

    快结束时,会创建用户,sentry新建的时候需要一个超级管理员用户:

    566.png

    (5)启动所有服务

    docker-compose up -d

    (6)访问sentry

    打开浏览器,输入url: ipaddress:9000

    访问之前可以检查下容器和端口情况:

    docker ps看下当前运行的容器:

    wKioL1gZqaKiPlY7AAJc5MOnRi0369.png-wh_50

    netstat -ant 查看端口打开情况:

    wKioL1gZqhqAw9TEAAE2XDH4f8g685.png-wh_50

    登陆界面,这里会提示你的Root URL,如果不想更改继续下一步即可完成:

    6o0.png

    页面展示:

    wKiom1gZqw-zJZg8AADqkoNCxKI808.png-wh_50

    至此sentry搭建完成!

    3.简单应用

    在这里,我以django项目为例,做个示范

    • 新建一个项目


      1531136157(1).png
    微信图片编辑_20180709193827.jpg 微信图片编辑_20180709194133.jpg

    这样创建就完成了,这里我们将上面这个字符串复制下来,接下来回用到

    • django中的配置

    pip install raven #先安装raven库

    #settings文件
    
    INSTALLED_APPS = [
        .....
        'raven.contrib.django.raven_compat'
    ]
    
    
    # 将字符串写入
    RAVEN_CONFIG = {
        'dsn': 'http://5ca2ee80314c4749adf65f8f580c3330saodhoia.dahid***',
    }
    

    这样就配置完成了.
    项目跑起来,出现bug后,可以在sentry中实时看到,当然sentry还有很多功能,就不一一赘叙,可以去看它的文档

    相关文章

      网友评论

          本文标题:ubuntu 部署 sentry 及简单应用

          本文链接:https://www.haomeiwen.com/subject/juntpftx.html