Python: Desplegar en producción
Cómo desplegar tu código Python en producción en minutos
👋 ¡Bienvenido a la documentación de Stackhero!
Stackhero ofrece una solución nube de Python lista para usar que proporciona una serie de beneficios, incluyendo:
- Despliegue su aplicación en segundos con un simple
git push.- Use su propio nombre de dominio y benefíciese de la configuración automática de certificados HTTPS para una mayor seguridad.
- Disfrute de la tranquilidad con copias de seguridad automáticas, actualizaciones con un clic, y precios sencillos, transparentes y predecibles.
- Obtenga un rendimiento óptimo y una seguridad robusta gracias a una VM privada y dedicada.
Ahorre tiempo y simplifique su vida: solo toma 5 minutos probar la solución de alojamiento en la nube de Python de Stackhero.
El servicio de alojamiento en la nube de Python de Stackhero es una solución potente y fácil de usar para desplegar tus proyectos de Python en producción en minutos. Con su configuración sencilla y características robustas, puedes centrarte en escribir código mientras Stackhero se encarga del trabajo pesado.
Las características clave incluyen:
- Despliegue con un simple
git push - Dominio personalizable con gestión automática de certificados TLS (HTTPS)
- VM dedicada y privada para máxima seguridad y confidencialidad
- Soporte para HTTP/2, TLS 1.3 (HTTPS), WebSockets, compresión GZIP & Brotli, ETag, y acceso a puertos TCP/UDP
Requisitos previos
Antes de desplegar tus proyectos en Stackhero, asegúrate de tener Git instalado en tu ordenador.
Para ahorrar tiempo y evitar configuraciones complejas si tu entorno de desarrollo no está listo, considera usar Code-Hero de Stackhero.
Code-Hero es una plataforma de desarrollo potente, fácil de usar y lista para usar a la que puedes acceder directamente a través de tu navegador en cualquier ordenador, tableta o teléfono. Está basada en un fork de VSCode y viene preinstalada con todas las herramientas de desarrollo esenciales, para que puedas empezar a programar de inmediato sin complicaciones.
Ejemplo de una instancia de Code-Hero ejecutándose directamente en el navegador
Pasos para desplegar en Stackhero
Desplegar tu aplicación Python en Stackhero es sencillo. Puedes seguir estos pasos:
- Crea un servicio Python en Stackhero.
- Añade tu clave pública SSH a la configuración de tu servicio Python.
- Configura el comando
git pushen tu plataforma de desarrollo. - Añade un Makefile a tu proyecto.
- Despliega tu código en producción.
Si encuentras problemas durante el despliegue, la documentación "Solución de problemas" probablemente te proporcionará una solución. Puede ahorrarte tiempo y evitar frustraciones innecesarias.
Configuración de tu servicio "Stackhero for Python"
Si aún no has iniciado un servicio Stackhero for Python, crea uno en tu panel de Stackhero (solo toma 2 minutos).
Una vez que tu servicio Python esté en funcionamiento, necesitas configurarlo añadiendo tu clave pública SSH. Puedes encontrar tu clave pública ejecutando:
cat ~/.ssh/id_*.pub
¿Aún no tienes claves SSH?
Puedes crearlas usando:
ssh-keygen -t ed25519
Para configurar tu servicio Python:
- Ve al panel de Stackhero y selecciona tu servicio Python.
- Haz clic en el botón "Configurar".
- Pega el contenido de tu clave pública en la sección "Claves públicas SSH".
Ejemplo de configuración de un servicio Python
Consejo: Puedes establecer tu clave pública SSH globalmente para que los futuros servicios la incluyan automáticamente en su configuración. Para hacerlo, navega al panel de Stackhero, haz clic en tu foto de perfil en la esquina superior derecha, selecciona "Tu perfil", y añade tu clave pública SSH.
Configuración del comando git push para el despliegue
El despliegue en Stackhero utiliza la CLI de Git con el comando git push. Este método hace que los despliegues sean simples, rápidos y fiables y no requiere que instales herramientas adicionales.
Para habilitar esta función, copia el valor del comando git remote desde la página principal de tu servicio en el panel de Stackhero. El comando se parecerá a:
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
Comando Git remote de Python en el panel de Stackhero
Creación de un Makefile para el despliegue en Stackhero
Para desplegar tu código en Stackhero, debes especificar los comandos que Stackhero debe ejecutar. Esto se hace a través de un Makefile, que actúa como una interfaz entre Stackhero y tu aplicación.
Si no estás familiarizado con los archivos
Makefiley el comandomake, no te preocupes. Simplemente sigue las instrucciones proporcionadas aquí.
Crea un Makefile en la raíz de tu proyecto y añade el siguiente contenido:
run:
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -
Este Makefile incluye tres componentes importantes:
- La regla
runes obligatoria porque es ejecutada automáticamente por Stackhero. No la renombres. - El comando
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -es un ejemplo y debe ser reemplazado por el comando apropiado para tu aplicación. - Un carácter de tabulación debe preceder al comando gunicorn. Si encuentras un error que indica "*** missing separator", significa que falta el carácter de tabulación.
En este ejemplo, se inicia un servidor Gunicorn (asegúrate de que esté instalado y añadido a tu archivo requirements.txt). El argumento -b 0.0.0.0:8080 configura el servidor para escuchar en cualquier interfaz en el puerto 8080. Si cambias el puerto, actualízalo en la configuración de tu servicio Python en el panel de Stackhero. La parte app:app indica que el servidor usará el archivo app.py y la instancia app.
Despliegue de tu aplicación Python
Tu aplicación Python está ahora lista para el despliegue. Para desplegar tu código en Stackhero, ejecuta el siguiente comando desde tu directorio de proyecto:
git push stackhero main
La primera vez que ejecutes este comando, se te pedirá que añadas la huella digital de la clave SSH. Responde "yes" cuando se te pida. ¡En solo unos segundos, tu aplicación estará en línea!
Ejemplo de despliegue de código Python en Stackhero usando el comando git push
Para verificar tu aplicación desplegada, navega a la URL "website" mostrada en el panel de Stackhero (generalmente se parece a https://XXXXX.stackhero-network.com).
¡Felicidades, tu aplicación está ahora desplegada en producción!
¿Encuentras problemas durante el despliegue?
Consulta la sección Solución de problemas para soluciones que te ayudarán a resolver rápidamente los problemas.
Conclusión
Esta guía proporciona una visión general completa pero sencilla del despliegue de código Python en producción con Stackhero. Sirve como una base sólida para implementar eficazmente tus aplicaciones.
Para ampliar tus conocimientos, considera explorar la documentación "Usos avanzados del despliegue". Aprenderás cómo desplegar varias ramas de git, etiquetas o commits específicos, así como gestionar múltiples entornos como "staging" y "producción". También descubrirás cómo trabajar con variables de entorno y mucho más.
Si encuentras algún problema durante el proceso de despliegue, la documentación "Solución de problemas" es un recurso valioso que puede ayudarte a resolver los problemas de manera rápida y eficiente.