Lectores como tú ayudan a apoyar a MUO. Cuando realiza una compra utilizando enlaces en nuestro sitio, podemos ganar una comisión de afiliado. Leer más.

Si ha creado una aplicación de cartera o prototipo con Django, alojarla de forma gratuita en Vercel está a solo unos clics y una pequeña parte del código de distancia. Heroku solía ser un salvavidas, pero dejó de ofrecer alojamiento gratuito en 2022.

Con Vercel, puede implementar su aplicación directamente desde GitHub de forma gratuita y cualquiera puede acceder a ella desde cualquier lugar. Así es como se hace.

Configure su aplicación Django para Vercel

Deberá configurar algunos aspectos de su proyecto Django antes de poder implementarlo en Vercel.

Configurar el archivo vercel.json

Primero, debe crear un archivo vercel.json en la carpeta raíz de su proyecto para apuntar a Vercel a la interfaz de puerta de enlace del servidor web (WSGI) de su aplicación:

{
"construcciones": [
{
"src": "django_nombre_aplicación/wsgi.py",
"usar": "@vercel/python"
}
],
"rutas": [
{
"origen": "/(.*)",
"dest": "django_app_name/wsgi.py"
}
]
}
instagram viewer

Reemplazar django_app_name con el nombre de su aplicación Django (el mismo que la carpeta que contiene el configuración.py archivo).

Refactorizar el archivo wsgi.py

Vercel no reconoce el solicitud variable en el archivo wsgi.py. Afortunadamente, el único cambio que hará para resolver este problema es pasar el solicitud variable en Vercel como aplicación.

Así que refactorice su aplicación wsgi.py archivo como se muestra:

importar sistema operativo
de django.core.wsgi importar get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_blog.configuraciones")
aplicación = get_wsgi_application()
aplicación = aplicación

Conectarse a una base de datos remota

Si su aplicación necesita soporte de base de datos, use la provisión de Vercel o active una instancia de base de datos externa en algún lugar. Afortunadamente, hay muchos Base de datos PostgreSQL gratuita opciones en línea. Tú también puedes conectarse a un clúster de MongoDB si prefiere una base de datos NoSQL.

Sin embargo, aquí nos limitaremos al clúster de base de datos PostgreSQL de Railway, ya que ofrece un crédito inicial y es fácil de configurar.

Para configurar una instancia de PostgreSQL en Railway:

  1. Visita el Ferrocarril sitio web para crear una cuenta.
  2. Hacer clic Iniciar un nuevo proyecto.
  3. Seleccionar Aprovisionar PostgreSQL.
  4. Haga clic en el postgres banner para ver las variables de su base de datos y las cadenas de conexión.
  5. Ve a la Variables pestaña. Luego copia y pega el DATABASE_URL cadena en un editor de texto para formatearlo. Asegúrese de reemplazar los marcadores de posición en el DATABASE_URL cadena con los valores de variable apropiados.
  6. Copie las variables restantes y configure su base de datos en su Django configuración.py archivo, como se muestra a continuación. Recuerde reemplazar los nombres de las variables con los valores apropiados proporcionados por Railway.
    BASES DE DATOS = {
    'por defecto': {
    'MOTOR': 'django.db.backends.postgresql',
    'URL': 'DATABASE_URL',
    'NOMBRE': 'PGDATABASE',
    'USUARIO': 'PGUSER',
    'CONTRASEÑA': 'PGCONTRASEÑA',
    'ANFITRIÓN': 'PHOST',
    'PUERTO': PUERTOPG,
    }
    }

Considerar enmascarar estas variables secretas usando un .env archivo para reforzar la seguridad de su aplicación Django. Además, Vercel le permite enumerar sus variables de entorno durante la implementación.

Así que una vez que usas el os.getenv Python obtiene la variable especificada del entorno de alojamiento de Vercel. Por lo tanto, la configuración de su base de datos se convierte en:

BASES DE DATOS = {
'por defecto': {
'MOTOR': 'django.db.backends.postgresql',
'URL': os.getenv('POSTGRES_URL'),
'NOMBRE': os.getenv('PGNOMBRE'),
'USUARIO': os.getenv('PGUSER'),
'CONTRASEÑA': os.getenv('POSTGRES_CONTRASEÑA'),
'ANFITRIÓN': os.getenv('PHOST'),
'PUERTO': os.getenv('PGPORT),
}
}

Implemente su repositorio de GitHub en Vercel

La segunda parte de este proceso consiste en apuntar a Vercel a su repositorio en GitHub. Una vez que lo haya hecho, su aplicación estará activa y cualquiera podrá acceder a su sitio web en una URL que genera Vercel.

Crear un archivo de requisitos

Vercel intenta encontrar e instalar las dependencias de su proyecto dentro del requisitos.txt archivo durante la implementación. Sin embargo, recuerde que escribir dependencias desde un ambiente virtual en requisitos.txt siempre es más fácil que desde el espacio global.

Cree un archivo requirements.txt en la carpeta raíz de su proyecto usando el siguiente comando a través de la terminal:

pip congelar > requisitos.txt

Conecte su repositorio a Vercel

Vercel funciona mediante el seguimiento de cambios en un repositorio. Así que el primer paso de implementación es empuja tu código a GitHub o cualquier otro sistema de control de versiones que funcione mejor para usted. Ignora este paso si tu código ya está en GitHub.

Para comenzar con Vercel:

  1. Regístrese en el Sitio web de Vercel utilizando su cuenta de GitHub. Siga las instrucciones en pantalla para completar el registro de la cuenta y comenzar.
  2. A continuación, seleccione la opción de cuenta Hobby para usar Vercel de forma gratuita.
  3. Una vez que haya iniciado sesión, haga clic en Agregar nuevo. Luego haga clic Proyecto.
  4. A continuación, haga clic en Agregar cuenta de GitHub desde el Importar repositorio Git sección. O puede hacer clic Cambiar proveedor de Git si usa otro control de versión además de GitHub.
  5. Hacer clic Todos los repositorios. Luego haga clic Instalar.
  6. Seleccione su cuenta de GitHub de la lista.
  7. Vercel detectará automáticamente sus repositorios. Hacer clic Importar a la derecha del que lleva su proyecto Django.
  8. Haga clic en el Variables de entorno menú desplegable para enumerar sus variables de entorno en Vercel. Estos pueden incluir la clave secreta de su aplicación y las cadenas de conexión de la base de datos. Rellena el Nombre campo con el nombre de la variable. A continuación, introduzca su valor en el Valor campo.
  9. Hacer clic Agregar para crear un nuevo campo y agregar otras variables de entorno.
  10. Finalmente, haga clic en Desplegar. Tu aplicación debería estar activa en algunos momentos. Haga clic en la URL a la derecha del ícono web para visitar su nuevo sitio web.

Una vez implementado, Vercel realiza un seguimiento de los cambios posteriores enviados a la rama principal para reflejarlos en la versión en vivo. Por lo tanto, solo necesita implementar sus cambios en GitHub para actualizar su aplicación en tiempo real.

Si bien Vercel genera automáticamente una URL para su sitio web de Django, también puede implementar usando un nombre de dominio personalizado. Así que considera comprar un nombre de dominio de un registrador si necesitas uno

Aloje su sitio web de Django sin costo

A veces, se necesita más que un repositorio de GitHub para impresionar a posibles empleadores y clientes. Mientras que un repositorio sólido y coherente muestra su competencia, mostrar una versión en vivo de su cartera o prototipo de proyecto lo presenta como un triunfador.

Organizar un proyecto que no genera ingresos suele ser desalentador. Pero afortunadamente, Vercel es uno de los pocos servicios de alojamiento web gratuitos. Y has visto cómo implementar tu proyecto Django gratis en la plataforma. Aunque la URL generada parece desordenada, puede pegarla en el Léame de su proyecto en GitHub para mostrar a las personas cómo funciona su creación.