diff --git a/Makefile b/Makefile index 428e5a8..d567128 100644 --- a/Makefile +++ b/Makefile @@ -11,11 +11,11 @@ submodule_init: git submodule update &&\ popd -build: submodule_init - buil/build.sh +build: + build/build.sh -dev: build - docker compose -f docker-compose.yml -f docker-compose-dev.yml up -d +dev: submodule_init + COMPOSE_FILE=docker-compose.yml:docker-compose-dev.yml docker compose up -d prod: submodule_init - COMPOSE_FILE=docker-compose.yml docker compose -f docker-compose.yml -f docker-compose-dev.yml up -d \ No newline at end of file + COMPOSE_FILE=docker-compose.yml docker compose up -d diff --git a/README.md b/README.md index 507b544..b5e4b4d 100644 --- a/README.md +++ b/README.md @@ -100,12 +100,12 @@ Ces images sont le pendant de [celles publiées sur le dépôt de GeoNature](htt ## Liens utiles ## Lancer une instance de développement -Commencez par vous assurer d'avoir installé make `sudo apt install make` +Commencez par vous assurer d'avoir installé make `sudo apt install make`. -Il faut ensuite, dans votre fichier .env décommenter les lignes de l'environnent de dev +Il faut ensuite, dans votre fichier .env décommenter les lignes de l'environnent de dev. Une fois cela fait, il ne vous reste plus qu'à lancer `make dev`. Selon vos préférences, si la commande -`make submodule_init` a déjà été lancé une fois, vous pouvez simplement lancer un `docker compose up` +`make submodule_init` a déjà été lancé une fois, vous pouvez simplement lancer un `docker compose up`. /!\ Attention pour l'instant, l'instance de développement ne lance en mode dev que le backend, pas le frontend ni les autres services. /!\ diff --git a/build/build.sh b/build/build.sh index 294b69a..2572bb7 100755 --- a/build/build.sh +++ b/build/build.sh @@ -2,7 +2,8 @@ set -x set -o nounset - +# todo delete this file ? Unless we want people to be able to build without launching compose +# Why Buildkit is used ? export COMPOSE_DOCKER_CLI_BUILD=1 export DOCKER_BUILDKIT=1 source .env diff --git a/docker-compose-dev.yml b/docker-compose-dev.yml index 2836376..6e9026f 100644 --- a/docker-compose-dev.yml +++ b/docker-compose-dev.yml @@ -1,4 +1,67 @@ services: + + #------------------------------------Builds section start-----------------------------------# + base-backend: + image: ${GEONATURE_BACKEND_IMAGE}-wheels + build: + context: sources/GeoNature + dockerfile: backend/Dockerfile + target: wheels + entrypoint: /bin/bash -c exit + + base-frontend-source: + image: ${GEONATURE_FRONTEND_IMAGE}-source + build: + context: sources/GeoNature + dockerfile: frontend/Dockerfile + target: source + entrypoint: /bin/bash -c exit + + base-frontend-nginx: + image: ${GEONATURE_FRONTEND_IMAGE}-nginx + build: + context: sources/GeoNature + dockerfile: frontend/Dockerfile + target: prod-base + entrypoint: /bin/sh -c exit + + userhub-build: + image: ${USERSHUB_IMAGE} + build: + target: prod + context: sources/UsersHub + volumes: + - ./config/usershub:/dist/config/ + entrypoint: /bin/sh -c exit + #------------------------------------Builds section end------------------------------------# + + + geonature-backend: + depends_on: + base-backend: + condition: service_completed_successfully volumes: - ./sources/GeoNature:/sources/GeoNature + build: + dockerfile: build/dev/Dockerfile-geonature-backend + + geonature-worker: + depends_on: + base-backend: + condition: service_completed_successfully + build: + dockerfile: build/dev/Dockerfile-geonature-backend + + geonature-frontend: + depends_on: + base-frontend-source: + condition: service_completed_successfully + build: + context: . + args: + - GEONATURE_FRONTEND_IMAGE=${GEONATURE_FRONTEND_IMAGE} + # TODO create a dev dockerfiles + dockerfile: build/Dockerfile-geonature-frontend + +# TODO rendre optionel la partie peuplement de la BDD \ No newline at end of file