0
respostas

[Bug] Material diferente do apresentado no video e erro ao rodar aplicação

No arquivo application.properties já veio corrigido para spring.datasource.url=jdbc:postgresql://localhost:5432/logsdb

Logo não deu o erro que era para dar não encontrando a base "logs".

E quando rodo a aplicação recebo o seguinte erro no container do banco:

2022-12-06 15:58:05.760 UTC [108] ERROR: permission denied for schema public at character 14 database-api-cursos | 2022-12-06 15:58:05.760 UTC [108] STATEMENT: create table curso (id uuid not null, categoria_curso varchar(120) not null, data_inscricao timestamp not null, nome_curso varchar(120) not null, nome_professor varchar(120) not null, numero_curso varchar(10) not null, numero_matricula varchar(10) not null, periodo_curso varchar(30) not null, pre_requisito varchar(120) not null, primary key (id))

Não achei referência para a variável de ambiente $POSTGRES_DB usada no 01-init.sh :

sudo docker exec database-api-cursos env

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/15/bin HOSTNAME=9226aec39768 APP_DB_USER=alura APP_DB_PASS=nJ6vsW37rCd1v88 APP_DB_NAME=logsdb POSTGRES_USER=root POSTGRES_PASSWORD=h5UzM2kEnp8Q42 GOSU_VERSION=1.14 LANG=en_US.utf8 PG_MAJOR=15 PG_VERSION=15.1-1.pgdg110+1 PGDATA=/var/lib/postgresql/data HOME=/root

EDIT:

Para a versão atual do postgres o init tem que ser o seguinte (adicionado o OWNER $APP_DB_USER na criação do DB):

!/bin/bash

set -e export PGPASSWORD=$POSTGRES_PASSWORD;

psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL CREATE USER $APP_DB_USER WITH PASSWORD '$APP_DB_PASS'; CREATE DATABASE $APP_DB_NAME OWNER $APP_DB_USER; EOSQL

Sugiro corrigir os arquivos na plataforma !