Evaluating bids

Colocar um projeto Django + Postgres + Redis rodando local em produção na Azure

Published on the May 16, 2023 in IT & Programming

About this project

Open

Preciso de ajuda para colocar o projeto em produção.

Vou separar esse projeto em algumas partes.
1) Criar a infra na cloud (ganhei 1000 dolares na azure então vamos usa-la) que seja escalavel mas barata no começo
2) Instalar os "pacotes de produção" (ajustar load balance (nginx?) web acelerator (cloudflare?), app server (guvicorn?), ajustar para rodar corretamente no meu domínio (comprado no uol host).
3) aplicar SSL para https:
4) Migrar meu projeto da minha conta pessoal no git para a conta corporativa que criei no mesmo git
5) Criar um fluxo de ci/cd em que eu possa continuar mandando rapidamente os ajustes locais para produção
6) deixar de armazenar as imagens que os usuários postam localmente (na pasta do projeto) e usar um "s3 da azure" para isso

basicamente tenho o projeto django 4.0.10 rodando local normalmente mas não tem elementos de produção.

Ele é composto por 3 containers rodando no docker-compose. A ideia matarmos esses containers e usarmos o máximo de serviços gerenciados/serverless que puder. Talvez deixar apenas o container do projeto web.

O container web/django, o banco de dados postgres e um banco em memória redis.

O redis é usado para quatro coisas, para o celery (enfileirar jobs) whitenoise (servir arquivos estaticos), como cahe das views e pelo django channels ( chat com websockets) esse último parou de funcionar.

Quando o projeto rodava local e o redis no container o websocket conectava e funcionava normalmente, ao passar o projeto para um container, alguma coisa se perdeu e ele parou de conversar com o container do redis. Testei algumas coisas mas sem sucesso.

Acredito que o celery precise de um container só para ele, para poder rodar os workers mas parece que ele funciona dentro do container do projeto django atualmente.

Uma boa pratica que não consegui colocar para funcionar era separar os containers nginx (que rotea a requisição para os outros 2) wsgi (http normal) do asgi (requisicoes assincronas, pode ser por isso que o chat nao está funcionando). Hoje esses 3 containers são o mesmo container "web" rodando local.

Category IT & Programming
Subcategory Web development
What is the scope of the project? Small change or bug
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Roles needed Developer

Delivery term: Not specified

Skills needed

Other projects posted by M. V.