Python: Resolução de Problemas
Está a encontrar um problema com o seu serviço Python? A solução provavelmente está aqui!
👋 Bem-vindo à documentação do Stackhero!
Stackhero oferece uma solução cloud Python pronta a usar que proporciona uma série de benefícios, incluindo:
- Implemente a sua aplicação em segundos com um simples
git push.- Utilize o seu próprio nome de domínio e beneficie da configuração automática de certificados HTTPS para uma segurança reforçada.
- Desfrute de tranquilidade com backups automáticos, atualizações com um clique, e preços simples, transparentes e previsíveis.
- Obtenha performance ótima e segurança robusta graças a uma VM privada e dedicada.
Poupe tempo e simplifique a sua vida: só leva 5 minutos para experimentar a solução de hospedagem cloud Python do Stackhero!
O serviço de alojamento cloud Python da Stackhero é concebido para ser simples, mas ocasionalmente podem surgir desafios. Abaixo está um guia para o ajudar a resolver erros que possa encontrar.
Resolução do erro "failed to push some refs to '[...]'"
Pode encontrar este erro durante a implementação da aplicação:
error: failed to push some refs to '[...]'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Esta mensagem indica que o seu repositório Git local não está sincronizado com o repositório remoto na Stackhero. Para resolver isto, pode forçar o estado atual no repositório remoto usando este comando:
git push -f stackhero main
Resolução do erro "src refspec main does not match any"
Ao implementar código usando git push stackhero main, pode encontrar este erro:
error: src refspec main does not match any
error: failed to push some refs to 'ssh://<XXXXXX>.stackhero-network.com:222/project.git'
Este erro sugere que a branch main não existe localmente. Em vez disso, pode precisar de enviar a branch master. Pode tentar este comando:
git push stackhero master
Resolução do erro "Everything up-to-date"
O Git pode exibir Everything up-to-date quando não são detectadas alterações entre o seu código local e o código na Stackhero.
Se fez alterações mas se esqueceu de as confirmar, estes comandos podem ajudar:
git add -A .
git commit -m "Sua mensagem de commit"
git push stackhero main
Se não foram feitas alterações reais mas ainda assim deseja desencadear uma implementação, considere usar esta abordagem:
git commit --allow-empty -m "Force update"
git push stackhero main
Uma versão melhorada do Makefile pode automatizar este processo. Com esta versão, pode implementar com um simples comando
make deploy, mesmo que não sejam detectadas alterações de código.
Resolução do erro "make: *** No rule to make target 'run'"
Este erro indica que ou um Makefile está em falta na raiz do seu projeto ou o Makefile existente não define um alvo run.
Para resolver isto, pode criar um Makefile no diretório raiz do seu projeto com o seguinte conteúdo de exemplo:
run:
ENV=production gunicorn app:app \
--error-logfile - \
-b 0.0.0.0:8080
Este script inicia um servidor Gunicorn, executa o ficheiro app.py com a instância Flask app, e escuta na porta 8080.
Considere usar um Makefile melhorado para simplificar a execução do seu ambiente de desenvolvimento e a implementação da sua aplicação.
Resolução do erro "make: *** missing separator"
O erro make: *** missing separator ocorre num Makefile quando um carácter de tabulação é substituído por espaços antes de um comando. Cada comando num Makefile deve ser precedido por um carácter de tabulação, não por espaços.
Para corrigir este erro, assegure-se de que um carácter de tabulação (não espaços) precede os seus comandos:
run:
<tab>command
Substitua <tab> por um verdadeiro carácter de tabulação para resolver o problema.