public | ||
src | ||
.env.development | ||
.env.production | ||
.gitignore | ||
.prettierrc | ||
docker-compose.yaml | ||
Dockerfile | ||
index.html | ||
package-lock.json | ||
package.json | ||
README.md | ||
tsconfig.json | ||
tsconfig.node.json | ||
tsconfig.server.json | ||
vite.config.ts |
Exemplo de repositório para aplicação full-stack
Repositório de exemplo para utilização do CI/CD do campus com uma aplicação full-stack.
Arquitetura do exemplo
- Servidor
- NodeJS
- TypeScript
- Cliente
- VueJS
- Banco de dados
- Postgres
Requisitos
- Docker
- Docker-compose
Ambiente de desenvolvimento
É possível rodar o ambiente de desenvolvimento localmente, instalando as dependências do projeto e executando npm run dev
ou utilizando o ambiente pré-configurado em containers (recomendado).
Em ambos os casos, instale as dependências:
npm i
Para iniciar o ambiente
# Para iniciar
docker-compose up
# Para parar, tecle CTRL+C
ou
# Para iniciar em segundo plano
docker-compose up -d
# Para parar
docker-compose down
O ambiente de desenvolvimento disponibilizará:
- O frontend com hot-reload na porta
3000
- O backend na porta
5000
- O banco de dados PostgreSQL
- O gerenciador de banco de dados Adminer na porta
8080
Para compilar a imagem localmente
docker build -t ifms/fullstack-example .
Para executar a imagem localmente
docker run -it -p 8080:5000 ifms/fullstack-example:latest
Acesse http://localhost:8080
Note que a porta utilizada pelo servidor (dentro do container) é a 5000
, porém, para fins didáticos, estamos mapeando esta porta para a porta 8080
do host local.