Aplicativo com objetivo de gerenciar os recurso pessoas. Onde o usuário efetua o cadastro e login, então efetua o CRUD de resursos Pessoas
Ter instalado no ambiente de deploy, as seguintes tecnologias:
-
Docker Engine Documentação e download: https://docs.docker.com/engine/
-
Docker Compose Documentação e download: https://docs.docker.com/compose/install/
Após clonar o projeto, configurar as variaveis de ambiente no arquivo .env
cp .env.example .env
-
Editar o arquivo .env com o editor de sua preferência, neste arquivo, configurar principalmente as variaveis de configuração do aplicativo, as credenciais de banco de dados.
-
Obs: Como este projeto foi desenvolvido para integrar dados com o Postgres Sql, é apropriado configurar o .env com os dados configurados no docker-composer.yml
-
Obs 2: Ainda no arquivo .env, nomear o DB_HOST com o mesmo nome que a imagem do Postgres configurada no docker-compose.yml (Ex: 'DB_HOST=postgres') Após as configuraçõe no arquivo .env, efetuar a compilação da imagem do aplicativo
docker-compose build app
Com a compilação comcluida, executar o ambiente, de preferência em segundo plano.
docker-compose up -d
Verificar se os contêineres foram gerados corretamente
docker-compose ps
Após o ambiente estar rodando, iniciar o laravel
docker-compose exec -u root app composer install
Então, gerar uma chave única para o aplicativo
docker-compose exec -u root app php artisan key:generate
Agora, vá até seu navegador e acesse o nome de domínio ou endereço IP do seu servidor na porta especificada no arquivo .env (Ex: http://localhost:8100/ )
Gerar, atualizar, derrubar tabelas do banco de dados do postgres
docker-compose exec -u root app php artisan migrate
'Semear' as tabelas de banco de dados geradas.
docker-compose exec -u root app php artisan db:seed
Execução de testes unitarios
docker-compose exec -u root app vendor/bin/phpunit
POST /api/register
Parâmetro | Tipo | Descrição |
---|---|---|
name |
string |
Obrigatório. Nome para identificação do usuário |
email |
string |
Obrigatório. Email utilizado para o login |
password |
string |
Obrigatório. Senha usada para o usuário efetua o login |
confirmPassword |
string |
Obrigatório. Confirmação da senha usada para o usuário efetua o login |
POST /api/login
Parâmetro | Tipo | Descrição |
---|---|---|
email |
string |
Obrigatório. Email utilizado para o login |
password |
string |
Obrigatório. Senha usada para o usuário efetua o login |
POST /api/logout
Parâmetro | Tipo | Descrição |
---|---|---|
token |
string |
Obrigatório. Token necessário para efetuar o processo de logout. |
Efetua o logout do usuário.
GET /api/pessoas
Parâmetro | Tipo | Descrição |
---|---|---|
Nenhum parametro necessário |
GET /api/pessoas/${id}
Parâmetro | Tipo | Descrição |
---|---|---|
id |
int |
Obrigatório. O ID da pessoa selecionada |
POST /api/pessoas
Parâmetro | Tipo | Descrição |
---|---|---|
pessoa_nome |
string |
Obrigatório. Nome do recurso pessoa a ser cadastrado. |
PUT /api/pessoas/${id}
Parâmetro | Tipo | Descrição |
---|---|---|
id |
int |
Obrigatório. O ID do item que você quer |
pessoa_nome |
string |
Obrigatório. O novo nome do recurso pessoa |
DELETE /api/pessoas/${id}
Parâmetro | Tipo | Descrição |
---|---|---|
id |
int |
Obrigatório. O ID do item que você quer |