Evaluando propuestas

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

Publicado el 16 Mayo, 2023 en Programación y Tecnología

Sobre este proyecto

Abierto

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.

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Bug o cambio pequeño
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo las especificaciones
Disponibilidad requerida Según se necesite
Roles necesarios Programador

Plazo de Entrega: No definido

Habilidades necesarias

Otros proyectos publicados por M. V.