Cómo instalar Django Web Application Framework en Debian 10

Marco Django

Django es un marco de aplicaci√≥n web de c√≥digo abierto que lo ayuda a desarrollar sitios web y aplicaciones din√°micos. Es seguro, r√°pido y estable, lo que le permite crear un sitio web complejo con menos codificaci√≥n. Hay varias formas de instalar Django en su sistema. Puede instalarlo usando el repositorio de Debian, usando PIP o desde el repositorio de Git. Puede elegir cualquier m√©todo dependiendo de sus necesidades. Django le permite crear un proyecto en entornos virtuales de Python. De esta manera, puede crear m√ļltiples entornos Django en un solo sistema.

En este tutorial, aprenderemos cómo instalar el marco web Django con PIP en Debian 10. También aprenderemos cómo crear una aplicación Django y conectarla con una base de datos.

requisitos previos

  • Un servidor que ejecuta Debian 10.
  • Una contrase√Īa de root est√° configurada en su servidor.

Empezando

Antes de comenzar, actualice su sistema con la √ļltima versi√≥n. Puedes hacerlo ejecutando el siguiente comando:

apt-get update -y
apt-get upgrade -y

Una vez que su sistema esté actualizado, reinícielo para aplicar los cambios.

Instalar Django

Django est√° escrito en el lenguaje Python. Por lo tanto, deber√° instalar las dependencias de Python en su sistema para poder instalar Django. Puede instalarlos todos con el siguiente comando:

apt-get install python3 python3-pip tree -y

Después de instalar todos los paquetes, puede verificar la versión instalada de PIP con el siguiente comando:

pip3 -V

Deberías obtener el siguiente resultado:

pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)

Ahora, puede proceder a instalar Django usando el comando PIP como se muestra a continuación:

pip3 install Django

Una vez completada la instalación, verifique la versión de Django usando el siguiente comando:

django-admin --version

Debería ver el siguiente resultado:

3.0.2

En este punto, Django se ha instalado en su servidor. Ahora puede continuar con el siguiente paso.

Crear un proyecto Django

Ahora comencemos a crear un proyecto Django de muestra. Primero, cambie el directorio a /opt donde desea crear un proyecto Django:

cd /opt

A continuación, ejecute el siguiente comando para crear un nuevo proyecto de Django llamado Dproject:

django-admin startproject Dproject

Una vez que se ha creado el proyecto, puede ver la estructura de directorios de este proyecto con el siguiente comando:

tree

Deberías obtener el siguiente resultado:

.
??? Dproject
    ??? Dproject
    ?   ??? asgi.py
    ?   ??? __init__.py
    ?   ??? settings.py
    ?   ??? urls.py
    ?   ??? wsgi.py
    ??? manage.py

A continuación, cambie el directorio a Dproject y migre los cambios pendientes con el siguiente comando:

cd Dproject
python3 manage.py migrate

Una vez que la migración se haya completado con éxito, debería ver el siguiente resultado:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying sessions.0001_initial... OK

En este punto, se ha creado un nuevo proyecto Django dentro del directorio /opt.

Crear un superusuario para Django

A continuación, deberá crear un superusuario para que Django acceda a la interfaz de administración de Django. Puedes crearlo con el siguiente comando:

python3 manage.py createsuperuser

Proporcione su nombre de usuario, direcci√≥n de correo electr√≥nico y contrase√Īa deseados como se muestra a continuaci√≥n:

Username (leave blank to use 'root'): admin
Email address: [email protected]
Password: 
Password (again): 
Superuser created successfully.

Inicie el servidor Django

Por defecto, no se puede acceder a Django desde el sistema remoto. Por lo tanto, deber√° configurar Django y definir la IP de su servidor. Puedes hacerlo editando el archivo settings.py.

nano /opt/Dproject/Dproject/settings.py

Cambia la siguiente línea:

ALLOWED_HOSTS = ['your-server-ip']

Guarde y cierre el archivo cuando haya terminado. A continuación, inicie el servidor Django con el siguiente comando:

cd /opt/Django
python3 manage.py runserver 0.0.0.0:8000

Una vez que el servidor se haya iniciado correctamente, debería obtener el siguiente resultado:

Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
January 07, 2020 - 13:01:23
Django version 3.0.2, using settings 'Dproject.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

Acceder a la aplicación Django

En este punto, la aplicación Django se inicia y escucha en el puerto 8000. Para acceder a ella, abra su navegador web y escriba la URL http://your-server-ip:8000. Debería ver la aplicación Django en la siguiente pantalla: Publicidad

Marco Django

Para acceder a la interfaz de administración de Django, abra su navegador web y escriba la URL http://your-server-ip:8000/admin. Será redirigido a la página de inicio de sesión de Django:

Inicio de sesión

Proporcione su nombre de usuario y contrase√Īa de administrador de Django y haga clic en el Tronco en bot√≥n. Deber√≠a ver la interfaz de administraci√≥n de Django en la siguiente pantalla:

Consola de administración de Django

Instalar conector de base de datos MariaDB

A continuación, deberá instalar el conector de base de datos MariaDB y otros paquetes de desarrollo para conectar Django con la base de datos MariaDB. Puede instalarlos todos usando el siguiente comando:

apt-get install mariadb-server python3-dev libmariadb-dev libmariadbclient-dev -y

Una vez que todos los paquetes estén instalados, puede instalar la biblioteca mysqlclient usando el comando PIP como se muestra a continuación:

pip3 install mysqlclient

Una vez instalado, inicie sesión en el shell de MariaDB con el siguiente comando:

mysql

A continuaci√≥n, establezca la contrase√Īa de root para MariaDB con el siguiente comando.

MariaDB [(none)]> SET PASSWORD FOR 'root'@'localhost' = PASSWORD("newpassword");

A continuación, cree una base de datos para Django con el siguiente comando:

MariaDB [(none)]> create database testdb;

Puede ver la base de datos creada anteriormente usando el siguiente comando:

MariaDB [(none)]> show databases;

Deberías obtener el siguiente resultado:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| testdb             |
+--------------------+

A continuación, elimine los privilegios y salga del shell de MariaDB con el siguiente comando:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Configurar Django para conexión MariaDB

A continuación, deberá definir las credenciales de la base de datos MariaDB en Django. Puede definirlo editando el archivo settings.py:

nano /opt/Dproject/Dproject/settings.py

Encuentra las siguientes líneas:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

Y reemplázalos con las siguientes líneas:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'OPTIONS': {
        'read_default_file': '/etc/mysql/mariadb.conf.d/50-client.cnf',
        },
    }
}

Guarde y cierre el archivo cuando haya terminado. Luego, edite el archivo de credenciales del cliente MariaDB como se muestra a continuación:

nano /etc/mysql/mariadb.conf.d/50-client.cnf

Defina las credenciales de su base de datos MariaDB como se muestra a continuación:

[client]
database = testdb 
user = root   
password = newpassword
default-character-set = utf8

Guarde y cierre el archivo, luego reinicie el servicio MariaDB para implementar los cambios:

systemctl restart mariadb

A continuación, cambie el directorio al proyecto Django y migre los nuevos cambios con el siguiente comando:

cd /opt/Dproject
python3 manage.py migrate

Una vez que la migración se haya completado con éxito, puede continuar con el siguiente paso.

Probar la conexión MariaDB

En este punto, Django est√° configurado para conectarse a la base de datos MariaDB. Es hora de probarlo.

Para hacerlo, inicie el servidor Django con el siguiente comando:

cd /opt/Django
python3 manage.py runserver 0.0.0.0:8000

Una vez que el servidor Django se haya iniciado correctamente, debería obtener el siguiente resultado:

Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
January 07, 2020 - 13:30:49
Django version 3.0.2, using settings 'Dproject.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.

Ahora puede acceder a su aplicación Django usando la URL http://your-server-ip:8000. Debería ver su aplicación Django en la siguiente pantalla:

Aplicación Django

Después de la prueba, puede detener el servidor Django de cualquier tipo presionando CTRL + C en su terminal.

Conclusión

¡Felicidades! ha instalado correctamente Django y lo ha conectado con la base de datos MariaDB en el servidor Debian 10. Ahora puede comenzar a desarrollar su aplicación web y aplicar migraciones en su aplicación Django. No dude en preguntarme si tiene alguna pregunta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *