Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Sugestão] Preparo do ambiente para quem começa por este curso

Banco de dados Posrgres com Docker

  • Instale o Docker Desktop ou outro gerenciador de containers (caso tenha alguma limitação com o uso de licenças).
  • Crie o arquivo docker-compose.yaml com o conteúdo abaixo
version: '3.8'

services:
  postgres:
    image: postgres:latest
    container_name: postgres_db
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: screenmatch
    ports:
      - "5432:5432"
    volumes:
      - ./postgres_data:/var/lib/postgresql/data
  • Para executar, abra o terminal no diretório em que foi criado o arquivo docker-compose.yaml e execute docker-compose up.
  • Repare que será criado um diretório postgres_data, para de fato persistir o banco de dados fora do container. Caso prefira começar com um banco zerado sempre que iniciar o container, basta remover o item volumes.

Sobre OpenAPI Platform

  • https://platform.openai.com/
  • Para criar uma chave para si, entre ou cadastre-se.
  • Navegue pelo menu à esquerda:
    • Organization/Billing: Registre uma forma de pagamento. Em 21/04/2025, foi necessário colocar um crédito de no mínimo 5 dólares (USD). É possível definir alertas e cobrança automática, esteja atento(a) a essas configurações.
    • Organization/API Keys : Crie uma API Key. Guarde em local seguro para que não seja usada por terceiros sem seu conhecimento, pois isso pode gerar custos. Não é possível consultar chaves geradas previamente.
    • Organization/Limits: consulte modelos em uso e respectivos custos. Atualize o modelo usado na aplicação, classe br.com.alura.screenmatch.service.ConsultaChatGPT linha 12. O modelo "text-davinci-003" estava descontinuado em 21/04/2025.

Variáveis de ambiente

  • Para executar a aplicação, é necessário definir algumas variáveis de ambiente para acesso ao banco e para acesso à API do ChatGPT.
  • É possível configurar o VSCode para iniciar a aplicação Java com as variáveis de ambiente definidas, sem ter que exportá-las uma a uma via terminal:
    • Acesse Run/Add Configuration para criar o arquivo .vscode/launch.json.
    • Adicione as variáveis consultadas pela aplicação no application.properties e via System.getProperty o atributo env. Exemplo:
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    
    "configurations": [
        
        {
            "type": "java",
            "name": "Current File",
            "request": "launch",
            "mainClass": "${file}"
        },
        {
            "type": "java",
            "name": "ScreenmatchApplication",
            "request": "launch",
            "mainClass": "br.com.alura.screenmatch.ScreenmatchApplication",
            "projectName": "screenmatch",
            "env": {
                "DB_PASSWORD": "postgres",
                "DB_USER": "postgres",
                "DB_NAME": "screenmatch",
                "DB_HOST": "localhost:5432",
                "OPENAI_APIKEY": "sua-api-key"
            }
        }
    ]
}
1 resposta
solução!

Oi, Marília! Como vai?

Agradeço por compartilhar essa sugestão tão completa com a comunidade Alura.

Você trouxe um guia muito útil para quem está começando — especialmente ao combinar Docker com PostgreSQL e explicar o uso do launch.json para variáveis de ambiente no VSCode. Esses passos ajudam bastante a evitar erros comuns de configuração, além de economizar tempo na preparação do ambiente.

Obrigada por compartilhar.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!