Início rápido — Python
Publique uma aplicação Python funcional na Zenifra usando a origem Repositório Git com o provedor GitHub.
Pré-requisitos
- Python 3.11 ou mais recente instalado localmente
- uma conta no GitHub, com o GitHub App da Zenifra instalado e conectado à organização (veja Como conectar o GitHub)
- acesso ao console da Zenifra
Nota: Este quickstart usa o GitHub. O mesmo fluxo vale para um repositório Forgejo; veja Implantação via Forgejo.
Passo 1 — Crie sua aplicação
mkdir hello-zenifra-python
cd hello-zenifra-python
python -m venv .venv
source .venv/bin/activate
pip install fastapi uvicornCrie main.py:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello from Zenifra!", "runtime": "python"}
@app.get("/health")
async def health():
return {"status": "ok"}Crie requirements.txt com as dependências:
fastapi
uvicornImportante: a Zenifra instala as dependências com
pip install -r requirements.txta partir da raiz do repositório (ou do Diretório raiz configurado no projeto). Sem esse arquivo, nenhuma dependência é instalada.
Passo 2 — Publique no GitHub
Crie um repositório no GitHub e envie o código:
git init
git add .
git commit -m "Initial commit"
git branch -M main
git remote add origin https://github.com/your-username/hello-zenifra-python.git
git push -u origin mainPasso 3 — Crie o projeto na Zenifra
- No console, escolha Origem do Projeto como Repositório Git e, em Provedor Git, selecione GitHub.
- Selecione o repositório e a branch
main. - Em Runtime, selecione
Pythone escolha a Versão. - No campo Porta, mantenha
8000, a porta padrão do runtime Python. - Em Comando Start, use
uvicorn main:app --host 0.0.0.0 --port 8000. - Se quiser atualização automática por push, selecione Automático por branch em Modo de deploy.
- Clique em Criar Projeto.
Sua aplicação ficará disponível em *.clients.zenifra.com.
Passo 4 — Valide o deploy
Abra a URL pública e teste /health. Se a aplicação não responder, revise a porta, o Comando Start e os Logs de Build. Os logs da aplicação ficam disponíveis em todos os planos.
Publicando uma aplicação Flask
Para Flask, a configuração é praticamente idêntica. Use gunicorn app:app --bind 0.0.0.0:8000 no Comando Start:
# app.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return {"message": "Hello from Zenifra with Flask!"}# requirements.txt
flask
gunicornObservação sobre runtime
Na Zenifra, o runtime é escolhido no momento da criação do projeto. Para mais detalhes sobre instalação de dependências, comandos e limitações, consulte a página de Runtimes.
Próximos passos
Última atualização em