Nouvelle mise en place docker #15
No reviewers
Labels
No milestone
No project
No assignees
5 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Construction_PA/PA_Communautaire!15
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "dev_docker_v2"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Avantage :
Pour tester :
Se rendre sur https://localhost:8000/docs
Puis, vous pouvez modifier un fichier, ça recharge l'exécution des app. Exemple avec packages/pac0/src/pac0/service/api_gateway/lib/api.py ou packages/pac0/src/pac0/service/annuaire_local/main.py
cool !
C'est effectivement plus rapide pour le dev local.
Attention: pour le déploiement d'instances de dev/test en ligne, ça sera moins souple que l'approche initiale:
git clone/switchJ'ai mi les image docker ici https://git.pdplibre.org/Construction_PA/-/packages
Pour construire et publié les images docker, il faut :
Pour info, on build 01-api-gateway avant, car tous les autres en dépend.
Est-ce que l'on met le fichier docker-compose.yml à la racine du projet ?
J'ai testé sur mon poste mac:
Sinon dans le dashboard SeaweedFS, c'est l'adresse interne du container 172.18.0.3 qui est présentée. Il faut juste remplacer par localhost pour les deux outils actifs (filer et dashboard)
Ça ronronne, Y a plus K :)
Pour le fichier d'environnement
secret.exempleil faut le copier.Le fichier secret est ignoré du versionnage et reste personnel à chaque environnement.
@bruno.d2b si tu build les images avec
docker compose buildest-ce que les images passe en arm ?Ok pour moi
@ha wrote in #15 (comment):
Le docker-compose.yml est maintenant à la racine du projet
J'ai fait une revue de code, mes remarques sont sous forme de commentaires dans les sources.
Pense aussi à ajouter/modifier une page de doc.
Pour les tests, il faudrait en faire au moins un pour vérifier le lancement et l'arrêt du docker-compose
(je peux essayer)
En résumé, rien de bloquant et j'ai hâte qu'on merge cette branche car j'en ai besoin sur #13
@f.piccinali Pourquoi as-tu rajouté un fichier .gitignore dans le répertoire docker ?
Le fichier secret est déjà dans le .gitignore à la racine : https://git.pdplibre.org/Construction_PA/PA_Communautaire/src/branch/dev_docker_v2/.gitignore
@philippe.entzmann J'ai mis à jour la doc docker : https://git.pdplibre.org/Construction_PA/PA_Communautaire/src/branch/dev_docker_v2/docs/developpement/Installation_Docker.md
Ma proposition de test : https://git.pdplibre.org/Construction_PA/PA_Communautaire/src/branch/dev_docker_v2/docs/developpement/Installation_Docker.md#v%C3%A9rifications
Par contre, je ne vois pas tes commentaires.
7ca2751f83tob87f65573d@ha pour le gitignore, Au temps pour moi, je n'avais pas vérifié, j'ai fait vite.
@ha wrote in #15 (comment):
Moi je les vois sur l'onglet
Files changedce la PR:Mes remarques ne sont pas bloquantes.
C'est bon à fusionner pour moi !
@ -0,0 +1,36 @@FROM python:3.13-slim-bookwormCOPY --from=docker.io/astral/uv:latest /uv /uvx /usr/local/bin/Attention
uvbouge encore beaucoup et on risque des problèmes de regressions si on ne fixe pas la version !Mettre
:0.10.3ou:0.10(pour avoir les fix)@ -0,0 +31,4 @@USER ${USER}WORKDIR /appprévoir de faire un
uv syncaprès avoir palcerpyproject.tomlpour éviter que chaque service ne télécharge toutes les dépendances à chaque lancementL'image sera plus grosse mais plus rapide à lancer
Mettre un commentaire en attendant
@ -0,0 +1,3 @@FROM git.pdplibre.org/construction_pa/01-api-gateway:devCMD ["/usr/local/bin/uv", "run", "faststream", "run", "pac0.service.validation_metier.main:app", "--reload"]L'option
--reloadest utile en dev mais en prod il faudra la supprimer.Voir si on peut choisir au lancement de l'image.
Mettre un commentaire en attendant.
@ -0,0 +1,3 @@FROM git.pdplibre.org/construction_pa/01-api-gateway:devCMD ["/usr/local/bin/uv", "run", "faststream", "run", "pac0.service.conversion_formats.main:app", "--reload"]Ne peut-on pas passer
pac0.service.conversion_formats.main:appen variables d'environnement ?ça permettrait de réduire le nombre de Dockerfile et d'images docker
Sinon, on peut créer une seule image et renseigner la commande au niveau de docker compose ?
oui bonne idée ... à prévoir plus tard
@ -0,0 +1,3 @@FROM git.pdplibre.org/construction_pa/01-api-gateway:devPrévoir de pouvoir utiliser un numéro de version plutôt que le tag
:devpour les déploiements prodMettre un commentaire en attendant.
@ -0,0 +1,2 @@NATS_URL=nats://02-esb-central:4222STOCKAGE_URL=http://10-stockage:8333Où est utilisé STOCKAGE_URL ?
ici :
endpoint_url=os.environ.get("STOCKAGE_URL", "http://localhost:8333/"),@ -0,0 +1,2 @@STOCKAGE_KEY=pdplibrekeyOù est utilisé STOCKAGE_KEY ?
Ici :
key=os.environ.get("STOCKAGE_KEY", "pdplibrekey"),@ -0,0 +1,2 @@STOCKAGE_KEY=pdplibrekeySTOCKAGE_SECRET=Sup3rCl3Où est utilisé STOCKAGE_SECRET ?
Ici :
secret=os.environ.get("STOCKAGE_SECRET", "Sup3rCl3"),validé pour moi aussi
à discuter de ce qu'on fait des branches des demandes d'ajout fermées (PR)
je propose qu'on les supprime ... une ou deux semaines après la fusion (merge) ... en cas de grosse régression où on pourrait ré-utiliser la même branche
@teddy.morel : voici un exemple de ce qu'on a discuté hier à propos des fusions/conflits:
Tu as fusionné cette branche qui a modifié la branche
main.Il y a désormais un risque que des demandes d'ajout (PR) en attente soit en conflit.
C'est le cas avec cette demande d'ajout !30 :
Cette demande d'ajout ne pourra donc être fusionnée que si les conflits sont résolus
yes @philippe.entzmann ,
j'ai traité toutes les PR à évaluer, et j'ai fait un rebase pour chaque suite à ce merge.
j'avais fais en ligne de commande d'abord mais j'ai vu plus tard que forgejo proposait des boutons pour le faire. du coup les premières PR on été fermée même si finalement dans le code la PR a été acceptée.
les prochaines validations de PR seront plus fluides maintenant je pense.
ok pour supprimer les branches à minima 2 semaines plus tard.