feat(deploy): image web Docker et docker-compose complet (P5)
- Dockerfile multi-étapes (node:22-alpine, pnpm, output standalone), .dockerignore - docker-compose : service web (hôte 4000) + mysql + mongo avec volumes nommés - Env de connexion selon DB_IMPL (MYSQL_*, MONGODB_URI) ; mongo ?authSource=admin - Seed MySQL via 02-seed.sh (--default-character-set=utf8mb4) pour un UTF-8 propre - fix(api): parseTags gère les colonnes JSON déjà parsées par mysql2 - TODO : phase 5 et DoD cochées
This commit is contained in:
1 parent
17ae195b39
commit
f165168608
9 files changed
+112
-20
No files matched your search
Regular → Executable
+8
-1
@@ -1,3 +1,9 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Import du seed en forçant l'encodage UTF-8 (sinon les caractères accentués
|
||||
# du fichier source sont interprétés en latin1 et stockés en double-encodage).
|
||||
mysql --default-character-set=utf8mb4 "$MYSQL_DATABASE" <<'SQL'
|
||||
INSERT INTO cards (id, question, response, theme, tags, createdAt, updatedAt) VALUES
|
||||
('10000000-0000-4000-8000-000000000001', 'Qu''est-ce qu''une closure en JavaScript ?', 'Une fonction qui conserve l''accès à la portée de sa définition.', 'javascript', JSON_ARRAY('scope', 'fonction'), NOW(), NOW()),
|
||||
('10000000-0000-4000-8000-000000000002', 'Que retourne typeof null ?', 'La chaîne "object", héritage historique du langage.', 'javascript', JSON_ARRAY('types'), NOW(), NOW()),
|
||||
@@ -8,4 +14,5 @@ INSERT INTO cards (id, question, response, theme, tags, createdAt, updatedAt) VA
|
||||
('10000000-0000-4000-8000-000000000007', 'Que fait git rebase ?', 'Il réapplique les commits d''une branche sur une autre base.', 'git', JSON_ARRAY('branches'), NOW(), NOW()),
|
||||
('10000000-0000-4000-8000-000000000008', 'Différence entre merge et rebase ?', 'merge crée un commit de fusion, rebase réécrit l''historique de façon linéaire.', 'git', JSON_ARRAY('branches'), NOW(), NOW()),
|
||||
('10000000-0000-4000-8000-000000000009', 'Qu''est-ce qu''un volume Docker ?', 'Un stockage persistant indépendant du cycle de vie du conteneur.', 'docker', JSON_ARRAY('stockage'), NOW(), NOW()),
|
||||
('10000000-0000-4000-8000-000000000010', 'Différence entre RUN et CMD dans un Dockerfile ?', 'RUN s''exécute au build, CMD définit la commande lancée au démarrage du conteneur.', 'docker', JSON_ARRAY('dockerfile'), NOW(), NOW());
|
||||
('10000000-0000-4000-8000-000000000010', 'Différence entre RUN et CMD dans un Dockerfile ?', 'RUN s''exécute au build, CMD définit la commande lancée au démarrage du conteneur.', 'docker', JSON_ARRAY('dockerfile'), NOW(), NOW());
|
||||
SQL
|
||||
Reference in new issue
Block a user