Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Estou usando postgres no Docker

Professor, eu subi um container do Docker para servir o banco de dados na porta, mas não consegui criar o banco dentro do container, como eu posso fazer ? acessar via terminal e digitar o comando na mão?

Criei o container assim:

docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=postgres postgres

Tentei assim compartilhando uma pasta em meu notebook, e liberando a porta 5432:

docker run -d -p -it 5432:5432 -v /tmp/database:/var/lib/postgresql/data -e POSTGRES_PASSWORD=postgres postgres

O arquivo application.iml não mexi:

spring:
  datasource:
    url: jdbc:postgresql://${DB_HOST:localhost}:${DB_PORT:5432}/${DB_NAME:clines}
    username: ${DB_USER:postgres}
    password: ${DB_PASSWORD:postgres}
  jpa:
    hibernate:
      ddl-auto: validate

cors:
  allowed:
    origins: ${CORS_HOST:http://localhost:3000}
    all-methods: true
    all-headers: true
    send-credentials: true

Ele solta este erro no Console:

2022-07-06 20:47:34.305 ERROR 9888 --- [           main] com.zaxxer.hikari.pool.HikariPool        : HikariPool-1 - Exception during pool initialization.

org.postgresql.util.PSQLException: FATAL: database "clines" does not exist
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2578) ~[postgresql-42.2.11.jar:42.2.11]
    at    

Como eu faço para criar o banco "clines" dentro do container?

Tem um outro erro também. Desde quando fiz clone do git e importei no maven, ele esta com dificuldades, dando estes error no projeto: Insira aqui a descrição dessa imagem para ajudar na acessibilidade Eu não tenho algum pluggin instalado em meu eclipse que est dando este erro, qual plugin esta faltando? O maven esta igual do curso, mas falta algo... Tenta instalar o projeto em uma máquina zerada para você ver o erro...

2 respostas
solução!

Oi Jefferson,

No outro post respondi sobre os erros de compilação do projeto.

Para criar um database no postgre você deve passar mais esa variável de ambiente: POSTGRES_DB=clines

docker run -d -p 5432:5432 -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=clines postgres

Sim tinha dado certo. Obrigado Professor