前言
解决 sentry 安装时的 could not translate host name “postgres” to address: Name or service not known 问题
这两天,因为服务器磁盘占满;想扩容连个扩容软件都不能下载;也不知道怎么操作好,就直接删除了sentry
相关的数据,腾出磁盘空间;删除了数据之后,sentry
肯定就不能使用了;
然后就直接重装;安装好了最新版的sentry
,发现php
的sentry
的compose
包需要跟随更新;而且php
的版本也要升级到7.2以上;线上的环境不能瞎处理;所以只好重新再安装旧版的sentry
了。
安装
进入github
地址,进到release
;下载9.1.2版本的tar.gz
包;
直接 github 拉取的代码,是最新版的,需要php版本7.2以上的sentry的sdk才能正常的查看错误
https://github.com/getsentry/onpremise
直接解压,然后执行
./install.sh
执行的时候会产生一个问题,报错如下:
django.db.utils.OperationalError: could not translate host name “postgres” to address: Name or service not known
说是postgres
不能转换成地址;就是说连不上这个postgres
容器;
然后你在报错之前,查看启动的镜像docker ps -a
;你会发现postgres
没有启动
再查看docker
容器的日志,docker logs --since 30m 容器ID
(查看某个容器的30分钟内的报错),你会看到以下错误;说是postgres
没有指定密码
百度了很久;上面那个错我也不知道为啥
然后我这边是直接执行下面命令
docker run --name postgres -e POSTGRES_PASSWOD=postgres -d postgres
使用docker
安装了一个最新版的postgres
;然后修改docker-compose.yml
文件,把postgres
的image
改成postgres:latest
在改之前,先使用
docker images
命令,确认安装好了postgres:latest
;有这个就可以改yml
文件了
然后再修改sentry.conf.py
;把上面的密码复制到如下的地方
然后再执行./install.sh
;就能安装成功了
至于上面的错,怎么回事;有解决了的大神可以给我留言,让我也涨涨知识 [手动抱拳]