Este pequeno projeto faz parte do material diático da Disciplina Desenvolvimento Full Stack Avançado
O objetivo aqui é apresetar uma API emplementada seguindo o estilo REST.
As principais tecnologias que serão utilizadas aqui é o:
Será necessário ter todas as libs python listadas no requirements.txt
instaladas.
Após clonar o repositório, é necessário ir ao diretório raiz, pelo terminal, para poder executar os comandos descritos abaixo.
É fortemente indicado o uso de ambientes virtuais do tipo virtualenv.
(env)$ pip install -r requirements.txt
Este comando instala as dependências/bibliotecas, descritas no arquivo requirements.txt
.
Para executar a API basta executar:
(env)$ flask run --host 0.0.0.0 --port 5000
Em modo de desenvolvimento é recomendado executar utilizando o parâmetro reload, que reiniciará o servidor automaticamente após uma mudança no código fonte.
(env)$ flask run --host 0.0.0.0 --port 5000 --reload
Abra o http://localhost:5000/#/ no navegador para verificar o status da API em execução.
Certifique-se de ter o Docker instalado e em execução em sua máquina.
Navegue até o diretório que contém o Dockerfile e o requirements.txt no terminal. Execute como administrador o seguinte comando para construir a imagem Docker:
$ docker build -t rest-api .
Uma vez criada a imagem, para executar o container basta executar, como administrador, seguinte o comando:
$ docker run -p 5000:5000 rest-api
Uma vez executando, para acessar a API, basta abrir o http://localhost:5000/#/ no navegador.
Para verificar se a imagem foi criada você pode executar o seguinte comando:
$ docker images
Caso queira remover uma imagem, basta executar o comando:
$ docker rmi <IMAGE ID>
Subistituindo o
IMAGE ID
pelo código da imagemPara verificar se o container está em exceução você pode executar o seguinte comando:
$ docker container ls --all
Caso queira parar um conatiner, basta executar o comando:
$ docker stop <CONTAINER ID>
Subistituindo o
CONTAINER ID
pelo ID do conatinerCaso queira destruir um conatiner, basta executar o comando:
$ docker rm <CONTAINER ID>
Para mais comandos, veja a documentação do docker.