Open manubellido opened 3 years ago
creo que docker es otra opcion? en que se diferenciaria o tendria mas ventajas usar dokku en lugar de docker? hay una propuesta de usar docker ver #80
Para usar dokku, necesitamos docker. Dokku simplemente agarra tus containers y te ayuda a administrarlos desde la línea de comandos (remotamente)
@josemvaldivia no sé si viste esto. Tienes algún comentario?
Veo que vas a añadir docker y docker-compose. Dokku funciona con docker y se encarga de la configuración y manejo de los containers donde se vaya a hacer deployment. Si Dokku resultar ser buena opción dere ya no necesitamos docker-compose.
Arquitectura
Para correr manolo y los spiders en conjunto necesitamos:
Servicios extras
Hosting y Deployment
Podemos hostear toda la app + spiders en droplets de DigitalOcean y tener la base de datos hosteada en DigitalOcean también. Las ventajas son el costo y la familiaridad de uso de VPS.
Una de las principales dificultades de trabajar con VPS es el deployment del código y configuración de servicios para que interactúen entre sí.
Dokku al rescate.
link: Dokku La forma más fácil de hostear un app de Django es Heroku, que se caracteriza por hacer deployment con un simple
git push heroku master
, pero es realmente caro comparado con DigitalOcean. Sin embargo, podemos alcanzar la misma facilidad de deployment con Dokku:git push dokku main:master
.Dokku puede manejar el deployment del código de Django, configurar Redis, Postgres y las instancias de Celery. Se puede instalar en un droplet de DigitalOcean y ahí se pueden correr la web app de Manolo ( tipo
web
) y los spiders como (tipoworker
), con un simple archivo de configuración:y se puede escalar de acuerdo a la necesidad, por ejemplo:
Lo anterior significa: 1 instancia de Django y 2 para celery.
Un ejemplo de cómo se hace todo esto en la práctica: https://www.stavros.io/posts/deploy-django-dokku/
Recursos Estimados
Opción 1 ($$$):
web
+ 1worker
+ redis.Opción 2 ($$):
web
+ 1worker
+ redis + postgres. Dokku también ayuda a instalar y configurar Postgres de manera sencilla.Límite
Lo único malo de Dokku, es que se está limitado a los recursos que tenga el servidor donde está instalado. Pero esto es manejable al contratar un servidor más potente.