76 lines
1.4 KiB
Markdown
76 lines
1.4 KiB
Markdown
# 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 Postgres
|
|
- 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.
|
|
|
|
## Exemplo em produção
|
|
|
|
https://ex2.pp.ifms.edu.br/
|