FastAPI CLI¶
FastAPI CLI é uma interface por linha de comando do fastapi
que você pode usar para rodar sua app FastAPI, gerenciar seu projeto FastAPI e mais.
Quando você instala o FastAPI (ex.: com pip install fastapi
), isso inclui um pacote chamado fastapi-cli
. Esse pacote disponibiliza o comando fastapi
no terminal.
Para rodar seu app FastAPI em desenvolvimento, você pode usar o comando fastapi dev
:
Aquele commando por linha de programa chamado fastapi
é o FastAPI CLI.
O FastAPI CLI recebe o caminho do seu programa Python, detecta automaticamente a variável com o FastAPI (comumente nomeada app
) e como importá-la, e então a serve.
Para produção você usaria fastapi run
no lugar. 🚀
Internamente, FastAPI CLI usa Uvicorn, um servidor ASGI de alta performance e pronto para produção. 😎
fastapi dev
¶
Quando você roda fastapi dev
, isso vai executar em modo de desenvolvimento.
Por padrão, teremos o recarregamento automático ativo, então o programa irá recarregar o servidor automaticamente toda vez que você fizer mudanças no seu código. Isso usa muitos recursos e pode ser menos estável. Você deve apenas usá-lo em modo de desenvolvimento.
O servidor de desenvolvimento escutará no endereço de IP 127.0.0.1
por padrão, este é o IP que sua máquina usa para se comunicar com ela mesma (localhost
).
fastapi run
¶
Quando você rodar fastapi run
, isso executará em modo de produção por padrão.
Este modo terá recarregamento automático desativado por padrão.
Isso irá escutar no endereço de IP 0.0.0.0
, o que significa todos os endereços IP disponíveis, dessa forma o programa estará acessível publicamente para qualquer um que consiga se comunicar com a máquina. Isso é como você normalmente roda em produção em um contêiner, por exemplo.
Em muitos casos você pode ter (e deveria ter) um "proxy de saída" tratando HTTPS no topo, isso dependerá de como você fará o deploy da sua aplicação, seu provedor pode fazer isso pra você ou talvez seja necessário fazer você mesmo.
Tip
Você pode aprender mais sobre em documentação de deployment.