我有一个用于Django App的简单代码构建项目,我想在docker容器中启动Postgres数据库进行测试。
命令是:
docker run --name django-test-db -d -p 5432:5432 -e POSTGRES_PASSWORD=djangotest -e POSTGRES_USER=configuration-service-master -e POSTGRES_DB=configuration-service postgres:12-alpine
docker exec django-test-db psql -U configuration-service-master -c \"\\dn\"
在我的本地计算机上,一切正常,但是在AWS CodeBuild中,我收到错误消息:
psql:错误:无法连接到服务器:无法连接到服务器: 无此文件或目录 服务器是否在本地运行并接受 Unix域套接字“ /var/run/postgresql/.s.PGSQL.5432”上连接?
答案 0 :(得分:0)
尝试两件事:
使用'-h'标志连接以指定主机,以便连接通过TCP / IP而不是Unix套接字
public function render($request, Throwable $exception)
{
if ($request->wantsJson() && $exception instanceof NotFoundHttpException) {
return response()->json([
'message' => 'Not found',
], 404);
}
return parent::render($request, $exception);
}
在Build项目上启用特权模式: