One place for hosting & domains

      Cómo instalar Django y configurar un entorno de desarrollo en Ubuntu 20.04


      Introducción

      Django es un marco de trabajo web de código abierto y gratuito escrito en Python y sus principios básicos son la escalabilidad, la reutilización y el desarrollo rápido. También es conocido por su consistencia y acoplamiento suelto a nivel de marco de trabajo, lo cual permite que los componentes individuales sean independientes entre sí.

      A través este tutorial, configuraremos un entorno de Django para desarrollo en un servidor de Ubuntu 20.04. Para un sitio web activo, deberá considerar aspectos adicionales, como la conexión a una base de datos, la configuración de un nombre de dominio y la adición de capas de seguridad. Disponemos de varios tutoriales sobre Django que pueden servirle al realizar compilaciones que lleven nuestra etiqueta de Django.

      Requisitos previos

      Para completar este tutorial, necesitará lo siguiente:

      Paso 1: Instalar Django

      Existen varias formas de instalar Django, el pip del administrador de paquetes de Python, en un entorno virtual.

      En el directorio principal del servidor, crearemos el directorio que contendrá nuestra aplicación de Django. Ejecute el siguiente comando para crear un directorio que tenga el nombre django-apps o cualquier otro que elija. Luego, diríjase al directorio.

      • mkdir django-apps
      • cd django-apps

      Dentro del directorio django-apps, cree su entorno virtual. Lo citaremos como env​​ genérico, pero debe utilizar un nombre que sea significativo para usted y su proyecto.

      Ahora, active el entorno virtual con el siguiente comando:

      Sabrá que se activará una vez que el prefijo cambie a (env), el cual, según directorio en el que usted se encuentre, tendrá un aspecto similar al siguiente:

      Dentro del entorno, instale el paquete Django utilizando pip. Instalar Django nos permite crear y ejecutar aplicaciones Django.

      Una vez completada la instalación de Django, verifíquela ejecutando una comprobación de la versión:

      El resultado será igual o algo similar a este:

      Output

      3.0.6

      Con Django instalado en su servidor, podemos proceder a crear un proyecto de prueba para asegurarnos de que todo funcione correctamente. Crearemos una aplicación web de esquema.

      Paso 2: Ajustar la configuración del firewall

      Si siguió el tutorial de configuración inicial para servidores o tiene un firewall en ejecución en su servidor, tendremos que abrir el puerto que utilizaremos en el firewall de nuestro servidor. Para el firewall UFW, puede abrir el puerto con el siguiente comando:

      Si utiliza los firewalls de DigitalOcean, puede seleccionar HTTP desde las reglas de entrada. Puede obtener más información sobre los firewalls de DigitalOcean y crear reglas para ellos modificando las reglas de entrada.

      Paso 3: Iniciar el proyecto

      Ahora podemos generar una aplicación utilizando django-admin, una utilidad de línea de comandos para tareas de administración en Python. Luego, podemos utilizar el comando startproject para crear la estructura del directorio del proyecto para nuestro sitio web de prueba.

      En el directorio django-apps, ejecute el siguiente comando:

      • django-admin startproject testsite

      Nota: Ejecutar el comando django-admin startproject <projectname> asignará tanto al directorio del proyecto como al paquete del proyecto el nombre <projectname> y creará el proyecto en el directorio en el que se ejecutó el comando. Si se proporciona el parámetro opcional <destination>, Django utilizará el directorio de destino proporcionado como directorio del proyecto, y creará manage.py y el paquete del proyecto dentro de él.

      Ahora podemos ver los archivos del proyecto que acabamos de crear. Diríjase al directorio testsite y, luego, enumere el contenido del directorio para ver los archivos que se crearon:

      Output

      manage.py testsite

      Notará que el resultado que muestra este directorio contiene un archivo llamado manage.py y una carpeta llamada testsite. El archivo manage.py es similar a django-admin y dispone el paquete del proyecto en sys.path. Esto también establece la variable de entorno DJANGO_SETTINGS_MODULE para apuntar al archivo settings.py de su proyecto.

      Puede ver la secuencia de comandos manage.py en su terminal ejecutando el comando less de la siguiente manera:

      Cuando termine de leer la secuencia de comandos, presione q para cerrar la vista del archivo.

      Ahora, diríjase al directorio testsite para ver los demás archivos que se crearon:

      Luego, ejecute el siguiente comando para enumerar el contenido del directorio:

      Verá cuatro archivos:

      Output

      __init__.py asgi.py settings.py urls.py wsgi.py

      Veamos qué hay en cada uno de estos archivos:

      • __init__.py funciona como punto de entrada para su proyecto de Python.
      • asgi.py contiene la configuración para la implementación opcional en la interfaz de puerta de enlace de servidor asíncrono o ASGI, que proporciona un estándar para las apps que son sincronizadas o ASGI, y se considera como sucesor de WSGI (ver a continuación).
      • settings.py describe la configuración de la instalación de Django e indica a este la configuración disponible.
      • urls.py contiene una lista de urlpatterns que enruta y asigna URL a sus views.
      • wsgi.py contiene la configuración para la interfaz de puerta de enlace de servidor web o WSGI, que proporciona un estándar para las apps síncronas de Python.

      Nota: Aunque se generen archivos predeterminados, aún tiene la capacidad de modificar los archivos asgi.py o wsgi.py en cualquier momento para satisfacer sus necesidades de implementación.

      Paso 4: Configurar Django

      Ahora podemos iniciar el servidor y ver el sitio web en un host y puerto designados ejecutando el comando runserver.

      Deberá añadir la dirección ip de su servidor a la lista ALLOWED_HOSTS en el archivo settings.py ubicado en ~/test_django_app/testsite/testsite/.

      Como se indica en los documentos de Django, la variable ALLOWED_HOSTS contiene “una lista de cadenas que representa los nombres de host/dominio que este sitio de Django puede proporcionar. Esta es una medida de seguridad para evitar ataques a encabezados de host HTTP, que son posibles incluso con muchas configuraciones de servidores web aparentemente seguras”.

      Puede utilizar su editor de texto favorito para añadir su dirección IP. Por ejemplo, si utiliza nano, ejecute el siguiente comando:

      • nano ~/django-apps/testsite/testsite/settings.py

      Una vez que ejecute el comando, le convendrá dirigirse a la sección de hosts permitidos del documento y añadir la dirección IP de su servidor dentro de los corchetes y entre comillas individuales o dobles.

      settings.py

      """
      Django settings for testsite project.
      
      Generated by 'django-admin startproject' using Django 2.0.
      ...
      """
      ...
      # SECURITY WARNING: don't run with debug turned on in production!
      DEBUG = True
      
      # Edit the line below with your server IP address
      ALLOWED_HOSTS = ['your-server-ip']
      ...
      

      Puede guardar el cambio y salir de nano presionando CTRL + x y luego presionando y. Luego, accederemos a nuestra app web a través de un navegador.

      Paso 5: Acceder a la app web de Django

      Una vez completada nuestra configuración, asegúrese de regresar al directorio en el que se ubica manage.py:

      • cd ~/django-apps/testsite/

      Ahora, ejecute el siguiente comando reemplazando el texto your-server-ip por el IP de su servidor:

      • python manage.py runserver 0.0.0.0:8000

      Por último, puede dirigirse al siguiente enlace para ver el aspecto del esquema de su sitio web y reemplazar nuevamente el texto resaltado por el IP real de su servidor:

      http://your-server-ip:8000/
      

      Una vez que la página se cargue, verá lo siguiente:

      Página predeterminada de Django

      Esto confirma que Django se instaló de forma correcta y que nuestro proyecto de prueba funciona correctamente.

      Para acceder a la interfaz de administrador, añada /admin/ al final de su URL:

      http://your_server_ip:8000/admin/
      

      Con esto, accederá a una pantalla de inicio de sesión:

      Inicio de sesión de administrador en Django

      Si introduce el nombre de usuario y la contraseña de administrador que acaba de crear, tendrá acceso a la sección principal de administración del sitio:

      Página de administración de Django

      Para obtener más información sobre cómo trabajar con la interfaz de administración de Django, consulte “Cómo habilitar y conectar la interfaz de administración de Django”.

      Cuando termine de probar su app, puede presionar CTRL + C para detener el comando runserver. Con esto, regresará a su entorno de programación.

      Cuando esté listo para salir de su entorno de Python, puede ejecutar el comando deactivate:

      Al desactivar su entorno de programación, regresará a la línea de comandos del terminal.

      Conclusión

      A través de este tutorial, instaló Django y configuró un entorno de desarrollo correctamente para comenzar a trabajar en su app de Django.

      Ahora cuenta con la estructura necesaria para comenzar a compilar aplicaciones web de Django.



      Source link