...
| Bloc de code |
|---|
pod@pod:~$ sudo python3 -V pod@pod:~$ sudo python -V pod@pod:~$ sudo apt-get install -y python3-pip pod@pod:~$ pip3 search virtualenvwrapper pod@pod:~$ sudo pip3 install virtualenvwrapper |
A À la fin du bashrc, il faut ajouter ces deux lignes :
| Bloc de code |
|---|
pod@pod:~$ vim .bashrc
[..]
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
[..] |
...
| Bloc de code |
|---|
pod@pod:$ source .bashrc |
Et enfin créer l'environnement l‘environnement virtuel :
| Bloc de code |
|---|
pod@pod:~$ mkvirtualenv --system-site-packages --python=/usr/bin/python3 django_pod |
Récupération des sources
Concernant l'emplacement l’emplacement du projet, je conseille de le mettre dans /usr/local/django_projects
| Bloc de code |
|---|
(django_pod)pod@pod:~$ sudo mkdir /usr/local/django_projects |
Vous pouvez faire un lien symbolique dans votre home pour arriver plus vite dans le répertoire django_projects :
| Bloc de code |
|---|
(django_pod)pod@pod:~$ ln -s /usr/local/django_projects django_projects |
Placez-vous dans le répertoire django_projects
| Bloc de code |
|---|
(django_pod)pod@pod:~$ cd django_projects (django_pod)pod@pod:~/django_projects$ |
Donnez les droits à l'utilisateur Pod pod de lire et d'écrire d‘écrire dans le répertoire :
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects$ sudo chown pod:pod /usr/local/django_projects |
Vous pouvez enfin récupérer les sources :
| Avertissement | ||||
|---|---|---|---|---|
| ||||
Si Attention, si vous devez utiliser un proxy, vous pouvez le spécifier avec cette commande : |
la La récupération des sources de la V3 se font fait via cette commande : git clone https://github.com/EsupPortail/Esup-Pod.git podv3
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects$ git clone https://github.com/EsupPortail/Esup-Pod.git podv3 Clonage dans 'podv3'... remote: Counting objects: 4578, done. remote: Compressing objects: 100% (378/378), done. remote: Total 4578 (delta 460), reused 564 (delta 348), pack-reused 3847 Réception d'objets: 100% (4578/4578), 4.40 MiB | 3.88 MiB/s, fait. Résolution des deltas: 100% (3076/3076), fait. (django_pod) pod@pod:~/django_projects$ cd podv3/ |
...
Installation de toutes les librairies python :
Il faut vérifier que l'on l’on se trouve bien dans l'environnement l’environnement virtuel (présence de "(django_pod)" au début l'invite de commande. Sinon, il faut lancer la commande $> workon django_pod
...
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv3$ sudo apt-get install redis-server |
En théorie le service démarre automatiquement. Si vous avez installé Redis sur la même machine que Pod, rien à faire de plus. Pour vérifier si le service est bien démarré :
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv3$ sudo apt-get install redis-server |
...
Installation de Java
Pour utiliser Elasticsearch, il faut avoir java11 java 11 sur sa machine
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv2$ sudo apt-get install openjdk-11-jre |
Puis pour installer Elasticsearch sur Debian en utilsant les paquets, il faut suivre les instructions situées à cette adresse : https://www.elastic.co/guide/en/elasticsearch/reference/current/deb.html
Vous pouvez install installer Elasticsearch en version 6 ou en version 7
...
Ensuite il faut paramétrer l'instance l’instance :
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv2$ sudo vim /etc/elasticsearch/elasticsearch.yml |
...
| Bloc de code |
|---|
{
"name" : "pod-1",
"cluster_name" : "pod-application",
"cluster_uuid" : "5yhs9zc4SRyjaKYyW7uabQ",
"version" : {
"number" : "8.4.0",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "f56126089ca4db89b631901ad7cce0a8e10e2fe5",
"build_date" : "2022-08-19T19:23:42.954591481Z",
"build_snapshot" : false,
"lucene_version" : "9.3.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
} |
...
Pour
...
utiliser
...
la
...
recherche
...
dans
...
Pod,
...
nous
...
allons
...
avoir
...
besoin
...
également
...
du
...
plugin
...
ICU:
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv3$ cd /usr/share/elasticsearch/ (django_pod) pod@pod:/usr/share/elasticsearch$ sudo bin/elasticsearch-plugin install analysis-icu -> Downloading analysis-icu from elastic [=================================================] 100% -> Installed analysis-icu (django_pod) pod@pod:/usr/share/elasticsearch$ sudo /etc/init.d/elasticsearch restart [ ok ] Restarting elasticsearch (via systemctl): elasticsearch.service. |
...
Nous pouvons enfin vérifier le bon fonctionnement de l'ensemble (l'erreur l’erreur affichée lors de la deletion est normal puisque l'indice n'existe pas, mais nous devons supprimer avant de créer un index dans ES) :
...
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv3$ curl -sL https://deb.nodesource.com/setup_12.x | sudo bash - (django_pod) pod@pod:~/django_projects/podv3$ sudo apt install nodejs (django_pod) pod@pod:~/django_projects/podv3$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - (django_pod) pod@pod:~/django_projects/podv3$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list (django_pod) pod@pod:~/django_projects/podv3$ sudo apt update (django_pod) pod@pod:~/django_projects/podv3$ sudo apt install yarn |
Se
...
placer
...
dans
...
le
...
répertoire
...
où
...
est
...
installé
...
le
...
package.json
| Bloc de code |
|---|
(django_pod) pod@pod:~/django_projects/podv3$ cd pod |
...
À ce niveau, vous devriez avoir le site en français et en anglais et voir l'ensemble de la page d'accueil.
(django_pod) pod@Podpod@Pod:~/django_projects/podv3$podv3$ python manage.py runserver ADRESSE_IP/NOM_DNS:8080
--> exemple : (django_pod) pod@pod:~/django_projects/podv3$ python manage.py runserver pod.univ.fr:8080
- Attention -
...
Quand le site est lancé, il faut se rendre dans la partie administration puis dans site pour renseigner le nom de domaine de votre instance de Pod (par défaut 'example.com').
Avant la mise en production, il faut vérifier le fonctionnement de la plateforme dont l'ajout d'une vidéo, son encodage et sa suppression.
Attention, pour ajouter une vidéo, il doit y avoir au moins un type de vidéo disponible. Si vous avez correctement peuplé votre base de données avec le fichier initial_data.json vous devez au moins avoir other/autres.
il faut vérifier l'authentification CAS, le moteur de recherche etc.
...