MeAgendaAi

dotnet package

Caractristicas do projeto

SetUp - Ferramentas necessárias para o desenvolvimento

Criando image docker da aplicação

docker build -t me-agenda-ai:latest .

Argumento -t especifica o nome e a tag da imagem que será criada. Nesse caso, a imagem será chamada com uma tag atribuida.

  • Ex. meagendaai:dev

Criando container com image da aplicação MeAgendaAi, PostgreSQL e PgAdmin

O Projeto dispõe de uma estrutura de docker-compose para execucação da aplicação, uma instacia de container com um banco de dados em PostgreSQL e uma ferramenta web chamada PgAdmin para manipulação do banco de dados.

docker-compose up -d

Obs.: O -d indica que a execução do container será em background (em segundo plano).

PgAdmin - Configuração de acesso ao banco de dados

Para conectar na instância local do banco de dados, o PgAdmin deve ser configurado para acesso remoto. Você deve acessar a URL localhost:8081 e digitar o usuário e senha para acesso ao banco de dados. Caso não seja possível acessar o PgAdmin, verifique se o mesmo está rodando.

O email padrão é admin@admin.com e a senha 123 (configuração definida no docker-compose.yml).

Ao acessar o PgAdmin pela primeira vez o item Servers estará vazio, pois ainda não terá a configuração para se conectar-se ao banco de dados. Para configurar a conexão, siga as instruções abaixo:

  1. Click com o botão direito do mouse em Servers e acesse o menu Create => Server.
  2. Na guia General dê um nome para o servidor (Recomençado: MeAgendaAi).
  3. Na guia Connection, no campo Host/address, digite postgresdb, preencha o campo Port com 5432 e Maintenance database com postgres, caso ainda não esteja configurado.
  4. Ainda na guia Connection, no campo Username, digite admin e no campo Password, digite 123.
  5. Salve a configuração e neste momento, você já pode acessar o banco de dados.

Criando migration

Antes de criar qualquer migrations, precisar instalar o tool do entity framework (ef). Pode ser instalado como uma ferramenta global ou local.

Ex. local

dotnet tool install  dotnet-ef

Ex. global

dotnet tool install --global dotnet-ef

Para criar uma nova migration

dotnet ef migrations add _<NOME_MIGRATION>_ -s ./src/MeAgendaAi.Application/ -p ./src/MeAgendaAi.Infra.Data/
  • Argumento -s é referente a --startup-project, projeto onde tem referência da connection string e injeção da configuração do banco.
  • Argumento -p é referente a --project, projeto onde tem referência contexto do banco.

Aplicando migration

dotnet ef database update -s ./src/MeAgendaAi.Application/