1
resposta

[Dúvida] Deploy de uma aplicação Django

Tenho um projeto django que possui ao mesmo tempo um site, e o backend de um app mobile, com algumas APIs criadas com a biblioteca Django Rest Framework. O projeto já está finalizado e quero fazer o deploy do mesmo, mas estive enfrentando dificuldades para isso. Tentei realizar pelo python anywhere de início, mas encontrei alguns erros que não sei solucionar. Acredito que tenha sido por conta da minha versão do python não ser suportada pelo site. Depois tentei realizar o deploy pela heroku, mas continuei obtendo erros que não aconteciam nos tutoriais que estava seguindo. Meu app mobile funciona com o envio de dados para um banco de dados em mongoDB Atlas, um desses dados é um vídeo enviado pelo usuário que fica salvo no próprio projeto django, sendo salvo no banco de dados apenas o path para esse arquivo. Poderiam me ajudar listando alguns passos que devo seguir para lançar meu projeto?

1 resposta

Olá, Felipe, tudo bem por aí?

Puxa, que frustrante lidar com um erro justamente nessa fase do projeto! Você chegou a pesquisar especificamente sobre os erros que recebeu?

Vou tentar te ajudar com algumas sugestões e passos que você pode seguir.

  1. Escolha do servidor: PythonAnywhere e Heroku são boas opções para hospedar aplicações Django, mas existem outras opções como DigitalOcean, AWS e Google Cloud. A escolha do servidor depende muito das suas necessidades e do seu orçamento.

  2. Versão do Python: Verifique se a versão do Python que você está usando é suportada pelo servidor que você escolheu. Se não for, você pode precisar atualizar ou rebaixar a versão do Python.

  3. Dependências: Certifique-se de que todas as dependências do seu projeto estão listadas em um arquivo requirements.txt. Isso facilitará a instalação de todas as bibliotecas necessárias no servidor.

  4. Banco de dados: Se você está usando MongoDB Atlas, você precisa garantir que o servidor que você escolheu suporta conexões com MongoDB Atlas. Além disso, você precisa configurar as variáveis de ambiente no servidor para se conectar ao MongoDB Atlas.

  5. Arquivos estáticos e de mídia: Django não serve arquivos de mídia (como vídeos) em produção por padrão. Você pode usar um serviço de armazenamento em nuvem, como Amazon S3, para armazenar seus arquivos de mídia. O Django tem um pacote chamado django-storages que pode ajudar com isso.

  6. Configurações de produção: Certifique-se de que as configurações de produção do seu projeto Django estão corretas. Isso inclui coisas como DEBUG = False, ALLOWED_HOSTS, DATABASES, STATIC_URL, STATIC_ROOT, MEDIA_URL e MEDIA_ROOT.

  7. Testes: Antes de fazer o deploy, teste seu projeto em um ambiente que se assemelhe ao ambiente de produção o máximo possível. Isso pode ajudar a identificar e corrigir problemas antes do deploy.

  8. Logs: Se você ainda estiver enfrentando erros, verifique os logs do servidor. Eles podem fornecer pistas sobre o que está dando errado.

Espero que dê tudo certo com seu deploy. Como cada projeto é único, é necessário ter bastante atenção aos detalhes para perceber as necessidades específicas.

Abração.