*Archivado* = ¿El mejor servicio de alojamiento en la nube? = Hola chicos, quiero implementar mi API backend de Django pero no en producción, para desarrollo. ¿Cuál es su servicio en la nube preferido para hacer eso? Hasta ahora encontré el servicio de Ngrok y Amazon AWS, y Jenkins y yo entendemos cada uno a profundidad para hacer una comparación. Quiero saber por tu experiencia cual es tu servicio preferido PD: últimamente recibí una respuesta muy hostil por mi falta de experiencia y solo por tratar de ayudar: veo que este subtítulo se vuelve lentamente hostil y agresivo como otros sitios web (aparentemente, solo mencionar los nombres de otros sitios web hace que se elimine su publicación) Entonces, disculpe cualquier falta de experiencia que encuentre en mi publicación (o futuras publicaciones/comentarios) EDITAR: No esperaba tantas respuestas, gracias a todos por su respuesta, intentaré responder a todos Si se está implementando en un servidor remoto, realmente no importa si es para producción o no, la mayoría de las cosas serán iguales. Para una implementación gratuita y relativamente fácil, pruebe Pythonanywhere o Heroku. Si quieres más control, prueba Digital Ocean. Escribí una guía (que creo que es bastante completa) para implementar su *primera* aplicación Django para Digital Ocean aquí Sí, el océano digital es definitivamente una joya si quieres control, seguro que no lo implementarás en medio minuto, pero definitivamente es superior a la mayoría de las otras opciones si quieres más control. Pythonanywhere parece ajustarse a mis necesidades el 90 % del tiempo, sin demasiado control, sin demasiada automatización ni control manual, en algún punto intermedio Tengo mucha experiencia con AWS Lambda y Django. No puedo pensar en una sola buena razón para hacer Django sobre AWS Lambda. Como, ni una sola razón. Enormemente complicado por tan poco retorno, especialmente cuando sus dependencias se vuelven un poco más que triviales. No quiere estar jugando el juego de optimización de dependencia con el límite de tamaño de archivo de 250 MB. Si realmente tiene problemas de escalabilidad para un proyecto de django, diría que la solución es probablemente una combinación de ECS, apio y cloudfront. Heroku es muy fácil de implementar, gratis hasta que alcanzas un cierto límite, pythonanywhere es lo mismo pero un poco más difícil ya que tienes que configurar algunas cosas a mano, lo que requiere una comprensión básica de los comandos de Linux (nada avanzado) Ambos tienen una opción para bloquear el sitio con una contraseña si no desea que las personas lo visiten o se conecten a él a menos que estén autorizados. He estado usando Heroku durante un par de años. Mi base de datos es el nivel gratuito de postgres. Funciona muy bien y pago un total de $ 7 por mes. Déjame saber si tienes preguntas más específicas. Su documentación es muy buena y tuve problemas mínimos. Tengo una URL personalizada, https, todo Implemento todos mis proyectos de Django en Google Cloud Run. Me encanta de verdad Así es como lo resuelvo: Comienzo implementando mi base de datos de desarrollo en Google Cloud SQL. Utilizo esta misma instancia de mySQL en la nube para el desarrollo local y la puesta en escena y las pruebas en la nube **Desarrollador local ejecuto 3 contenedores docker con docker-compose: - mi aplicación Django. El contenedor tiene nginx incluido. DB apunta al contenedor de proxy SQL - Imagen de proxy estándar de Google SQL. Requiere una cuenta de servicio de Google json - contenedor phpmyadmin estándar. Principalmente para solucionar problemas de mySQL **Despliegue en la nube. puesta en escena y producción - Tengo un archivo cloudbuild.yaml para mi aplicación Django. Eso describe cómo compilar e implementar la aplicación Django en Google Cloud Run. - En Google Cloud Run, configuré un disparador para compilar/implementar mi aplicación en función de las confirmaciones de git para mi aplicación. Esto lee cloudbuild.yaml y automatiza la implementación de mis cambios en la nube. - Configuré todas mis variables ENV en los disparadores para que se pasen a cloudbuild.yaml y, finalmente, a las instancias de Cloud Run. Por supuesto, se diferencian por la puesta en escena y la producción. **Por qué me gusta** - La configuración inicial no es sencilla, pero la automatización que me brinda es increíble - El costo de las instancias de desarrollo es realmente bajo. Google Cloud Run cobra solo por los segundos usados. Entonces, unos pocos dólares por mes. Ahora, la instancia de Cloud SQL es donde está el costo, ya que activa una máquina virtual que siempre se está ejecutando. Los de CPU baja bajan a menos de 10 $ / mes - Para sus instancias de producción, obtiene todo el poder de Google Cloud Platform. Escalado horizontal infinito (siempre y cuando su aplicación web no tenga estado). Cloud Run escalará automáticamente. También puede escalar Cloud SQL hacia arriba y/u horizontalmente - Google Cloud Run viene con puntos finales http/https que puede asignar a su dominio. Sin problemas con las configuraciones de certificados SSL. Me encanta esto Avíseme si está interesado, puedo proporcionar más detalles. Ahora creo que debería escribir un artículo detallado sobre cómo hacer esto. Y aquí mis últimas aplicaciones web de Django, implementadas en Google Cloud Run Si ya está investigando sobre los diversos servicios de alojamiento en la nube, también podría ser una buena idea consultar Engine Yard. He usado Engine Yard para varias implementaciones de aplicaciones en la nube, y diría que es una plataforma muy dinámica y fácil de usar para implementar sus aplicaciones en la nube Engine Yard Cloud (EYC) es una plataforma como servicio (PaaS) ampliamente preferida para el alojamiento de aplicaciones Ruby, Node y PHP. Tiene una infraestructura robusta y completamente administrada junto con soporte de clase mundial. Tiene una infraestructura bastante segura y los parches se mantienen actualizados para su conveniencia. No tiene la sobrecarga de administrar la pila completa, incluidas las bases de datos y los balanceadores de carga. Todo esto está cuidado. Las copias de seguridad se realizan automáticamente. Como yo lo veo, Engine yard es una plataforma de ahorro de tiempo y costos También puede explorar Engine Yard Kontainers (EYK). Es una plataforma de próxima generación. Lo probé y descubrí que era una migración digna. Admite múltiples pilas, escalado automático en tiempo real y muchas otras funciones. Puede consultar Engine Yard Cloud y Engine Yard Kontainers Recomiendo usar App Platform en Digital Ocean. Es similar a Heroku, pero proporciona mucha más energía por una fracción de los costos de Heroku No tiene todas las características que tiene Heroku, pero al menos para mí tiene suficiente para trabajar. No soy DevOps, por lo que no sé cómo configurar el Droplet normal de forma segura. Esta es la razón por la cual App Platform funciona mucho mejor: no necesito pensar en la pérdida de medidas de seguridad que no sean dentro de mi aplicación. Todos mis proyectos personales se agrupan en contenedores docker y se implementan en un clúster de kubernetes de un solo nodo en Scaleway.com. Es bastante bueno y de bajo mantenimiento, y si uno alcanza una cierta escala, puedo moverlos fácilmente a un clúster más grande u otro servicio de implementación de contenedores (como ECS, o incluso implementarlos yo mismo en una instancia con solo un tiempo de ejecución de contenedor instalado ) En el pasado, implementé un servicio django en AWS Lambda con Zappa, pero se pierde gran parte del control y hay algunas pequeñas cosas que debe aprender e implementar (p. ej., usar un marco sin servidor, administrar versiones, mantener su lambdas "calientes", etc.).