FGA-GCES / Workshop-Docker-Entrega-01

Enunciado e código fonte do Trabalho Individual de GCES 2021/1
6 stars 47 forks source link

Trabalho Individual 01 2021.1

A Gestão de Configuração de Software é parte fundamental no curso de GCES, e dominar os conhecimentos de configuração de ambiente, containerização, virtualização, integração e deploy contínuo tem se tornado cada vez mais necessário para ingressar no mercado de trabalho.

Para exercitar estes conhecimentos, você deverá aplicar os conceitos estudados ao longo da disciplina no produto de software contido neste repositório.

O sistema se trata de uma aplicação Web em Typescript, que é composta de:

Para executar a aplicação em sua máquina, basta seguir o passo-a-passo descrito no arquivos README das pastas.

Resumo da aplicação

É uma aplicação extremamente simples, não possui muitas features, então o foco é justamente na containerização (e orquestração) dessa aplicação. Por ora, só é possivel fazer login (alem de interagir com o banco etc)

Aqui um esquema simples de como a aplicação se comunica:

diagrama

Prints de telas da aplicação

Frontend - chat-app

tela de carregamento
tela de carregamento
tela de login
tela de login
tela pós-login
tela pós-login

phpmyadmin

tela de gerenciamento do banco
tela de gerenciamento do banco

api-gateway

tela de queries em graphql
tela de queries em graphql

Trabalhos Anteriores

Alguns trabalhos de exemplo do semestre passado:

Critérios de avaliação

1. Containerização

A aplicação deverá ter seu ambiente completamente containerizado. Desta forma, cada subsistema (Front-end, Back-end e Banco de Dados) deverá ser isolado em um container individual.

Deverá ser utilizado um orquestrador para gerenciar comunicação entre os containers, o uso de credenciais, networks, volumes, entre outras configurações necessárias para a correta execução da aplicação.

Para realizar esta parte do trabalho, recomenda-se a utilização das ferramentas:

Nota

A nota de cada aluno será a soma dos itens abaixo que serão avaliados tanto de forma quantitativa (se foi realizado a implementação + documentação), quanto qualitativamente (como foi implementado, entendimento dos conceitos na prática, complexidade da solução). Faça os commits atômicos, bem documentados, completos a fim de facilitar o entendimento e avaliação do seu trabalho. Lembrando que esse trabalho é individual.

Os Itens de avaliação são (cada item tem peso 2.5 na nota final de 0 - 10):

1. Containerização