...
Astuce | ||
---|---|---|
| ||
Pour que les fichiers vidéos uploadés aient les bons droits (pour simplifier 644), j'ai positionné la ligne suivante dans le fichier settings_local.py : FILE_UPLOAD_PERMISSIONS = 0o644 |
Creation de l'index Pod
Nous pouvons enfin vérifier le bon fonctionnement de l'ensemble (l'erreur affichée lors de la suppression est normal puisque l'indice n'existe pas encore, mais nous devons supprimer avant de créer un index dans ES) :
Bloc de code | ||||||
---|---|---|---|---|---|---|
| ||||||
[%userpod%@ts-sun-video ~]$ cd
[%userpod%@ts-sun-video ~]$ source .bashrc
[%userpod%@ts-sun-video ~]$ cd /data/www/%userpod%/django_projects/podv2
[%userpod%@ts-sun-video /data/www/%userpod%/django_projects/podv2]$ workon django_pod
(django_pod) [%userpod%@ts-sun-video][/data/www/%userpod%/django_projects/podv2] python3.6 manage.py create_pod_index |
Base de données
Installation de la librairie
Bloc de code | ||||||
---|---|---|---|---|---|---|
| ||||||
[%userpod%@ts-sun-video ~]$ pip3 install "mysqlclient==1.3.14"14" |
En cas d'erreur, c'est que le client MySQL / MariaDB n'a pas été installé; il est alors nécessaire de réaliser, sous root, un yum install mariadb-devel
Avertissement |
---|
Surtout ne pas faire de "pip3 install mysqlclient" : il semblerait que la version de Django utilisée ne soit pas compatible avec la dernière version de MySQL. Cela provoquait une erreur du type "KeyError: <class 'bytes'>" lors de la création de la base de données (cf. https://github.com/PyMySQL/mysqlclient-python/issues/306). |
...
Création de la base de données :
Bloc de code | ||||||
---|---|---|---|---|---|---|
| ||||||
(django_pod) [%userpod%@ts-sun-video][/data/www/%userpod%/django_projects/podv2]# sh create_data_base.sh |
Il faut vérifier que l'on se trouve bien dans l'environnement virtuel.
Creation de l'index Pod
Nous pouvons enfin vérifier le bon fonctionnement de l'ensemble (l'erreur affichée lors de la suppression est normal puisque l'indice n'existe pas encore, mais nous devons supprimer avant de créer un index dans ES) :
Bloc de code | ||||||
---|---|---|---|---|---|---|
| ||||||
[%userpod%@ts-sun-video ~]$ cd [%userpod%@ts-sun-video ~]$ source .bashrc [%userpod%@ts-sun-video ~]$ cd /data/www/%userpod%/django_projects/podv2 [%userpod%@ts-sun-video /data/www/%userpod%/django_projects/podv2]$ workon django_pod (django_pod) [%userpod%@ts-sun-video][/data/www/%userpod%/django_projects/podv2]# sh python3.6 manage.py create_data_base.sh |
...
pod_index |
Création du super user
Bloc de code | ||||||
---|---|---|---|---|---|---|
| ||||||
(django_pod) [%userpod%@ts-sun-video][/data/www/%userpod%/django_projects/podv2]# python3.6 manage.py createsuperuser |
...
Bloc de code | ||||||
---|---|---|---|---|---|---|
| ||||||
[%userpod%@ts-sun-video][/]# mkdir /data/www/%userpod%/django_projects/podv2/pod/static/custom |
Templates
Pour utiliser des templates spécifiques, il est nécessaire de :
...
Bloc de code | ||||
---|---|---|---|---|
| ||||
[%userpod%@ts-sun-video]# cd /data/www/%userod%/django_projects/podv2/ [%userpod%@ts-sun-video /data/www/%userpod%/django_projects/podv2]# sudo pip3 install uwsgi |
Configuration uWSGI
Pour configurer uWSGI, je me base sur le fichier fourni par Pod v2, que je copie dans custom et que je personnalise :
...
Bloc de code | ||||
---|---|---|---|---|
| ||||
[%userpod%@ts-sun-video]# cd [%userpod%@ts-sun-video /home/%userpod%]# source .bashrc [%userpod%@ts-sun-video /home/%userpod%]# cd /data/www/%userpod%/django_projects/podv2 [%userpod%@ts-sun-video /data/www/%userpod%/django_projects/podv2]# workon django_pod (django_pod) [%userpod%@ts-sun-video][/data/www/%userpod%/django_projects/podv2]# /usr/bin/uwsgi --stop /data/www/%userpod%/django_projects/podv2/uwsgi/pod.pid |
Mise en place d'un service
Pour éviter de démarrer / arrêter manuellement le système de workers uWSGI, il est nécessaire de créer un service.
...
Migration v2.0.4 vers v2.1.0
Migration effective
Afin de tests, nous sommes passé d'une version 2.0.4 à une version 2.1.0 de Pod v2 sur l'environnement de test.
...