Cómo crear un entorno virtual para sus proyectos Django con virtualenv | Hosting mas barato

A estas alturas ya sabes para qué sirve Django. Si ha utilizado el marco de forma extensiva, es posible que haya notado que el mayor problema es que un nuevo proyecto creado en una versión de Django puede no ser compatible con otra. Por ejemplo, si el proyecto se creó en Django 1.5xy está actualizando a Django 1.6x, es posible que su proyecto se niegue a ejecutarse.
Una solución simple a este problema es quedarse con una versión de Django para todos sus proyectos. A continuación, puede utilizar virtualenv para crear un entorno virtual con sus propios directorios de instalación. Virtualenv le permite instalar una versión personalizada de Python con sus paquetes.
En este tutorial, veremos cómo instalar Django creando un entorno virtual (también conocido como virtualenv) y configurando un nuevo proyecto.
Antes de instalar Django, se recomienda que instale Virtualenv, que crea nuevos entornos aislados para aislar sus archivos de Python proyecto por proyecto. Esto asegura que los cambios en su sitio web no afectarán a otros sitios web que desarrolle. Lo interesante es que puede crear entornos virtuales utilizando diferentes versiones de Python, y cada entorno tiene sus propios paquetes..
En este artículo usaremos Python versión 3 para instalar Virtualenv.
Dependiendo de la versión de Python que desee utilizar, comience creando un entorno virtual. En este caso instalamos virtualenv con Python 3.
Virtualenv es la forma más recomendada de configurar un entorno Python.
Para ejecutar estos comandos, asegúrese de haber iniciado sesión en su servidor principal con su usuario de shell a través de SSH.
Estas instrucciones asumen que tiene una versión personalizada de Python 3 instalada en su computadora. Después de la instalación, ejecute pip3 para iniciar la instalación de virtualenv de la siguiente manera:
[server]$ pip3 install virtualenv Collecting virtualenv Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB) 100% |████████████████████████████████| 1.8MB 367kB/s Installing collected packages: virtualenv Successfully installed virtualenv-15.1.0
Necesita acceso completo a la versión Python 3 de virtualenv, así que ejecute el siguiente comando para verlo:
[server]$ which virtualenv /home/username/opt/python-3.6.2/bin/virtualenv
Al trabajar con el entorno virtual de Python, se recomienda utilizar la versión personalizada de Python en lugar de la versión del servidor. Siga los pasos a continuación para crear un nuevo entorno virtual con la versión personalizada instalada de Python.
Asegúrese de tener instalado el archivo completo de la versión personalizada de Python. Deberías tener algo como esto:
[server]$ which python3 /home/username/opt/python-3.6.2/bin/python
Vaya al directorio del sitio y cree un entorno virtual como se muestra a continuación:
[server]$ cd ~/example.com
Después de crear su entorno virtual, no olvide especificar la versión de Python que desea utilizar. En este caso, el siguiente comando ayuda a crear “mi proyecto” en la primera ruta con el indicador –p para identificar la ruta completa a la versión instalada de Python 3:
[server]$ virtualenv ~/example.com/my_project -p /home/example_username/opt/python-3.6.2/bin/python3 Running virtualenv with interpreter /home/example_username/opt/python-3.6.2/bin/python3 Using base prefix '/home/example_username/opt/python-3.6.2' New python executable in /home/example_username/example.com/env/bin/python3 Also creating executable in /home/example_username/example.com/env/bin/python Installing setuptools, pip, wheel...done.
Mientras trabaja con este comando, asegúrese de que el entorno local esté activo para asegurarse de tener las versiones correctas de paquetes y herramientas.
Active su entorno virtual ingresando:
[server]$ source my_project/bin/activate
El nombre de su entorno virtual debería aparecer al principio del símbolo del sistema así::
(my_project) [server]$
Ejecute el siguiente comando para confirmar que tiene la versión correcta de Python:
[server]$ python -V Python 3.6.2
Todos los paquetes instalados con pip están ahora en su directorio de entorno virtual.
Cuando haya terminado de trabajar con su entorno virtual, continúe y desactívelo escribiendo:
[server]$ deactivate
Esto debería restablecer su usuario de shell a la configuración predeterminada.
Ejecute el siguiente comando para borrar su entorno virtual:
[server]$ rm -rf /home/username/example.com/my_project
La herramienta pip facilita la ejecución de Django en Virtualenv. Es una herramienta sencilla para instalar sus paquetes. En algunos sistemas, se recomienda tener instalado python-dev para ejecutar virtualenv con éxito. También es importante actualizar pip a la última versión antes de instalar virtualenv.
En la mayoría de los sistemas, puede instalar fácilmente los dos escribiendo los siguientes comandos:
sudo apt-get install python-pip python-dev
sudo pip install -upgrade pip
Si está usando la versión de Python 3 para instalar Django, use el siguiente comando:
(my_project) [server]$ pip3 install Django (my_project) [server]$ pip3 install mysqlclient
En otros sistemas, siga las instrucciones oficiales de pip para comenzar la instalación. Esta publicación asume que su proyecto virtual tiene un archivo Requirements.txt. Este archivo se encuentra en el repositorio de Python y contiene todos los paquetes con las versiones apropiadas requeridas para que el proyecto se ejecute e instale correctamente.
PIL python-dateutil==1.5 django-guardian==1.1.0.beta south djangorestframework markdown django-filter pyyaml defusedxml django-oauth-plus django-oauth2-provider
Genere los requisitos de sus proyectos ejecutando el comando “pip Freeze” para listar todos los paquetes instalados en su computadora con todas las versiones disponibles.
pip freeze > requirements.txt
A veces, este proceso puede generar paquetes no deseados en el archivo de solicitud instalado en su computadora. Así que asegúrese de editar este archivo manualmente.
Cree su entorno virtual ingresando este comando:
virtualenv <environment_name>
Tenga en cuenta que este comando puede crear dos directorios diferentes de la siguiente manera:
<environment_name>/lib/pythonX.X/site-packages
(Los archivos de Python instalados se muestran aquí)
<environment_name>/bin/python/
(Las bibliotecas de intérpretes de Python para su entorno virtual se pueden encontrar aquí)
Puede usar el comando anterior para agregar la opción –no-site-packages o –system-site-packages para indicar si desea o no recibir todos estos paquetes instalados.
Ingrese lo siguiente para activar el entorno virtual:
source ./<environment_name>/bin/activate
En su símbolo del sistema, debería ver algo como esto:
(<environment_name>) $
Esto muestra que está ejecutando la instalación virtualenv correcta.
Mueva los detalles de su proyecto al directorio virtualenv ejecutando el siguiente comando:
pip install requirements.txt
A estas alturas ya debería tener Django completamente instalado en Virtualenv.
Ahora que ha creado un entorno virtual, está listo para continuar con la creación de un proyecto de Django.
Primero, ejecute el siguiente comando para construir su proyecto en Django:
[server]$ cd $HOME/example.com [server]$ source $HOME/example.com/my_project/bin/activate (my_project) [server]$ python my_project/bin/django-admin.py startproject <projectname>
Para facilitar que un pasajero identifique su proyecto, cree un archivo _wsgi. py en el directorio de su sitio web. Deberías tener algo como esto:
import sys, os INTERP = "/home/<username>/local/bin/python" #INTERP is present twice so that the new python interpreter #knows the actual executable path if sys.executable != INTERP: os.execl(INTERP, INTERP, *sys.argv) cwd = os.getcwd() sys.path.append(cwd) sys.path.append(cwd + '/djangoprojectname') #You must add your project here sys.path.insert(0,cwd+'/my_project/bin') sys.path.insert(0,cwd+'/my_project/lib/python2.7/site-packages') os.environ['DJANGO_SETTINGS_MODULE'] = "djangoprojectname.settings" from django.core.wsgi import get_wsgi_application application = get_wsgi_application()
Comience configurando archivos estáticos en Django para que sirvan correctamente CSS, imágenes y Javascript, ya que los necesitará para que funcione la interfaz de administración.
example.com/projectname/settings.py
Luego, desplácese hacia abajo hasta donde pueda encontrar Static_URL, debe configurarse en / static /.
Agregue otra línea para establecer la ubicación del directorio estático de la siguiente manera:
STATIC_ROOT = os.path.dirname(BASE_DIR) + '/static/'
En su directorio público, asegúrese de crear el siguiente directorio / static donde Django almacenará todos sus archivos estáticos:
(my_project) [server]$ cd $HOME/example.com/public (my_project) [server]$ mkdir static
Ejecute el comando collectstatic para preparar los archivos estáticos para la interfaz de administración.
(my_project) [server]$ cd $HOME/example.com/projectname/ (my_project) [server]$ python manage.py collectstatic
Configure su base de datos en el archivo setting.py de la siguiente manera:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } }
Edite la información para que coincida con sus credenciales reales.
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mydatabase', 'USER': 'mydatabaseuser', 'PASSWORD': 'mypassword', 'HOST': 'mysql.example.com', 'PORT': '3306', } }
En el archivo settings.py, actualice el campo etiquetado ALLOWED-HOSTS con su nombre de la siguiente manera:
ALLOWED_HOSTS = ['example.com' , 'www.example.com']
Asegúrese de que la información esté en el directorio de su proyecto Django:
(my_project) [server]$ cd ~/example.com/<projectname>
Una vez que la configuración esté completa, ejecute migrate en su directorio:
(my_project) [server]$ python manage.py migrate 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 contenttypes.0002_remove_content_type_name... OK
Luego crea tu superusuario:
(my_project) [server]$ python manage.py createsuperuser Username (leave blank to use 'username'): my_django_user Email address: email@example.com Password: Password (again): Superuser created successfully.
Vaya al directorio y agregue el siguiente texto; Archivo /tmp/restart.txt:
(my_project) [server]$ cd /home/username/example.com (my_project) [server]$ mkdir tmp (my_project) [server]$ cd tmp (my_project) [server]$ touch restart.txt
Después de realizar estos cambios, asegúrese de ejecutar este comando desde el directorio de su proyecto:
(my_project) [server]$ touch tmp/restart.txt
Confirme que el proyecto Django se haya instalado correctamente en su sitio:
Ahora debería poder acceder a la página de administración de Django.
Si sigue estos pasos correctamente, instala las versiones correctas de Pythons y todo lo demás, debería haber instalado Django correctamente. Esperamos que esta guía sea de utilidad.