-
Notifications
You must be signed in to change notification settings - Fork 1
Déploiement
Cloner les repos github (web-backend et web-front cf récupération du code source) et mettre à jour les fichiers de conf
Au niveau du front : Récupérer la branche de dev :
git checkout hudeca/dev
S’il n’est pas déjà présent, créer un fichier .env avec les infos suivantes :
DJANGO_APP_SERVER_URL=http://localhost:8000
REACT_APP_DATABASE=HuDeCA (ou nom du viewer utilisé : RGV ou Uncover)
Au niveau du back : Récupérer la branche de dev :
git checkout develop
Dans le rep config/settings/, dans production.py au niveau de CSRF_TRUSTED_ORIGINS ajouter l’url d’accès à l’application (exemple : test-192-168-101-109.vm.openstack.genouest.org)
NB : dans le fichier preproduction.yml, il y a une ligne concernant le volume : cela permet d’avoir des données persistantes si on fait des docker-compose up/down par la suite mais ces lignes peuvent être supprimées lors des devs pour éviter d’avoir à recopier le code au sein du volume
Créer les networks web et genoapp (web-backend):
docker network create web
docker network create genoapp
Faire un build pour les deux applis (se placer au sein des répertoires correspondant avant de lancer les commandes) Back: docker-compose -f preproduction.yml build
Front, pour builder à partir du code en local :
docker-compose -f preprod_docker-compose.yml build
ou pour récupérer directement l'image sur dockerhub:
docker build -t scilicium/geno_app-front:dev .
Lancer les deux applications Back :
docker-compose -f preproduction.yml up -d
Front :
docker-compose -f preprod_docker-compose.yml up -d
docker-compose -f preproduction.yml run --rm django python manage.py migrate
docker-compose -f preproduction.yml run django python manage.py createsuperuser
De base les medias (images, fichiers...) sont stockés dans le directory définie dans /config/settings/base.py
MEDIA_ROOT = str(APPS_DIR / "media")
Avec APPS_DIR :
APPS_DIR = ROOT_DIR / "scilicium_django_react"
Pour accéder aux données:
from django.conf import settings
os.path.join(settings.MEDIA_ROOT,fileName)