Projeto desenvolvido com o intuito de aprender e colocar em prática a construção de um serviço de API utilizando o sistema de Container Docker. Foi construída uma API simples de CRUD utilizando Node.js e MySQL.
Instruções de execução considerando um sistema Linux, verificar os comandos equivalentes para outras plataformas.
Para executar o projeto, recomendo utilizar a versão da imagem montada para o Docker, assim, não há necessidade de ter instalado nenhuma ferramenta como Node.js ou MySQL, nem configurar uma instância de banco de dados.
Clonar o repositório:
git clone https://github.com/rhenandias/docker-node-crud.git
Navegar para a pasta do projeto:
cd docker-node-crud
Criar o arquivo de variáveis de ambiente:
touch .env
O arquivo de variáveis de ambiente deve conter as seguintes definições (configurar de acordo com o desejado, ou manter os exemplos a seguir):
# Configurar a porta desejada para a API
PORT = 4005
# Configurar a porta do banco de dados
DB_PORT = 3306
# Nome para a tabela do banco de dados
DB_DATABASE = db_crud
# Nome para o usuário do banco de dados
DB_USER = root
# Senha para o usuário do banco de dados
DB_PASSWORD = 123456789
Executar o Docker Composer:
sudo docker-compose up --build
work in progress
Os containers de teste são containers isolados no arquivo docker-compose.test.yml
enquanto que a versão de operação é executada através do arquivo docker-compose.yml
.
Para executar o container com os testes:
sudo docker-compose -f docker-compose.test.yml up --exit-code-from backend --build
Work in Progress: Construir testes reais para as funcionalidades do sistema e