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-stoppedbuild: .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: memcachedSENTRY_REDIS_HOST: redisSENTRY_POSTGRES_HOST: postgresSENTRY_EMAIL_HOST: smtp
(4)重建数据库,并创建sentry超级管理员用户
docker-compose run –rm web upgrade
这里会持续大概半小时
快结束时,会创建用户,sentry新建的时候需要一个超级管理员用户:
(5)启动所有服务
docker-compose up -d
(6)访问sentry
打开浏览器,输入url: ipaddress:9000
访问之前可以检查下容器和端口情况:
docker ps看下当前运行的容器:
netstat -ant 查看端口打开情况:
登陆界面,这里会提示你的Root URL,如果不想更改继续下一步即可完成:
页面展示:
至此sentry搭建完成!
3.简单应用
在这里,我以django项目为例,做个示范
- 新建一个项目
这样创建就完成了,这里我们将上面这个字符串复制下来,接下来回用到
- django中的配置
pip install raven #先安装raven库
#settings文件INSTALLED_APPS = [.....'raven.contrib.django.raven_compat'
]# 将字符串写入
RAVEN_CONFIG = {'dsn': 'http://5ca2ee80314c4749adf65f8f580c3330saodhoiadahid',
}
这样就配置完成了.
项目跑起来,出现bug后,可以在sentry中实时看到,当然sentry还有很多功能,就不一一赘叙了,可以去看它的文档