refactor: rename to loko; implement base template and add static assets for Loko branding
This commit is contained in:
parent
63e22c3166
commit
6de48bee77
1931 changed files with 227 additions and 220 deletions
|
|
@ -25,10 +25,10 @@ venv_old/
|
||||||
*.sqlite3
|
*.sqlite3
|
||||||
|
|
||||||
# Django media & static
|
# Django media & static
|
||||||
streetup/media/
|
loko/media/
|
||||||
streetup/private_media/
|
loko/private_media/
|
||||||
streetup/static/
|
loko/static/
|
||||||
streetup/django.log
|
loko/django.log
|
||||||
*.log
|
*.log
|
||||||
|
|
||||||
# VS Code / Editor config
|
# VS Code / Editor config
|
||||||
|
|
|
||||||
8
.github/workflows/deploy.yml
vendored
8
.github/workflows/deploy.yml
vendored
|
|
@ -1,4 +1,4 @@
|
||||||
name: Build and Deploy StreetUp
|
name: Build and Deploy Loko
|
||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
@ -13,7 +13,7 @@ on:
|
||||||
- production
|
- production
|
||||||
|
|
||||||
env:
|
env:
|
||||||
REGISTRY: ghcr.io
|
REGISTRY: registry.valogeo.be
|
||||||
IMAGE_NAME: ${{ github.repository }}
|
IMAGE_NAME: ${{ github.repository }}
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
|
@ -80,11 +80,11 @@ jobs:
|
||||||
if [[ "$ENV_CHOICE" == "production" ]]; then
|
if [[ "$ENV_CHOICE" == "production" ]]; then
|
||||||
echo "env=production" >> $GITHUB_OUTPUT
|
echo "env=production" >> $GITHUB_OUTPUT
|
||||||
echo "host=${{ secrets.SSH_HOST_PROD }}" >> $GITHUB_OUTPUT
|
echo "host=${{ secrets.SSH_HOST_PROD }}" >> $GITHUB_OUTPUT
|
||||||
echo "path=/home/kdeterme/streetup-prod" >> $GITHUB_OUTPUT
|
echo "path=/home/kdeterme/loko-prod" >> $GITHUB_OUTPUT
|
||||||
else
|
else
|
||||||
echo "env=test" >> $GITHUB_OUTPUT
|
echo "env=test" >> $GITHUB_OUTPUT
|
||||||
echo "host=${{ secrets.SSH_HOST_TEST }}" >> $GITHUB_OUTPUT
|
echo "host=${{ secrets.SSH_HOST_TEST }}" >> $GITHUB_OUTPUT
|
||||||
echo "path=/home/kdeterme/streetup-test" >> $GITHUB_OUTPUT
|
echo "path=/home/kdeterme/loko-test" >> $GITHUB_OUTPUT
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Deploy to Server via SSH
|
- name: Deploy to Server via SSH
|
||||||
|
|
|
||||||
10
.gitignore
vendored
10
.gitignore
vendored
|
|
@ -8,8 +8,8 @@ node_modules/
|
||||||
*.log
|
*.log
|
||||||
*.md
|
*.md
|
||||||
!README.md
|
!README.md
|
||||||
!streetup/common/help_docs/
|
!loko/common/help_docs/
|
||||||
!streetup/common/help_docs/**/*.md
|
!loko/common/help_docs/**/*.md
|
||||||
|
|
||||||
media/
|
media/
|
||||||
private_media/
|
private_media/
|
||||||
|
|
@ -25,18 +25,18 @@ __pycache__/
|
||||||
*$py.class
|
*$py.class
|
||||||
|
|
||||||
|
|
||||||
streetup/.env
|
loko/.env
|
||||||
|
|
||||||
scripts/
|
scripts/
|
||||||
|
|
||||||
carl_export/
|
carl_export/
|
||||||
carl_export.*
|
carl_export.*
|
||||||
|
|
||||||
streetup/static/
|
loko/static/
|
||||||
|
|
||||||
deploy.sh
|
deploy.sh
|
||||||
generated_passwords.txt
|
generated_passwords.txt
|
||||||
streetup/generated_passwords.txt
|
loko/generated_passwords.txt
|
||||||
scratch/
|
scratch/
|
||||||
Caddyfile
|
Caddyfile
|
||||||
Caddyfile.prod
|
Caddyfile.prod
|
||||||
|
|
|
||||||
84
Dockerfile
84
Dockerfile
|
|
@ -26,7 +26,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
|
||||||
# Création de l'environnement conda avec les packages cartographiques et poppler
|
# Création de l'environnement conda avec les packages cartographiques et poppler
|
||||||
# gdal, geos, proj et poppler sont installés depuis conda-forge
|
# gdal, geos, proj et poppler sont installés depuis conda-forge
|
||||||
RUN mamba create -n streetup-env -y -c conda-forge \
|
RUN mamba create -n loko-env -y -c conda-forge \
|
||||||
python=3.12 \
|
python=3.12 \
|
||||||
gdal \
|
gdal \
|
||||||
geos \
|
geos \
|
||||||
|
|
@ -35,13 +35,13 @@ RUN mamba create -n streetup-env -y -c conda-forge \
|
||||||
&& mamba clean -afy
|
&& mamba clean -afy
|
||||||
|
|
||||||
# Activation par défaut de l'environnement Conda dans le conteneur
|
# Activation par défaut de l'environnement Conda dans le conteneur
|
||||||
ENV PATH=/opt/conda/envs/streetup-env/bin:$PATH
|
ENV PATH=/opt/conda/envs/loko-env/bin:$PATH
|
||||||
ENV CONDA_DEFAULT_ENV=streetup-env
|
ENV CONDA_DEFAULT_ENV=loko-env
|
||||||
|
|
||||||
# Configuration explicite des variables GIS pour GeoDjango
|
# Configuration explicite des variables GIS pour GeoDjango
|
||||||
ENV GDAL_LIBRARY_PATH=/opt/conda/envs/streetup-env/lib/libgdal.so
|
ENV GDAL_LIBRARY_PATH=/opt/conda/envs/loko-env/lib/libgdal.so
|
||||||
ENV GEOS_LIBRARY_PATH=/opt/conda/envs/streetup-env/lib/libgeos_c.so
|
ENV GEOS_LIBRARY_PATH=/opt/conda/envs/loko-env/lib/libgeos_c.so
|
||||||
ENV PROJ_DATA=/opt/conda/envs/streetup-env/share/proj
|
ENV PROJ_DATA=/opt/conda/envs/loko-env/share/proj
|
||||||
|
|
||||||
# Argument de build pour activer l'installation des librairies IA (ultralytics, OpenCV...)
|
# Argument de build pour activer l'installation des librairies IA (ultralytics, OpenCV...)
|
||||||
# Passer INSTALL_AI_LIBS=true dans le docker-compose pour les inclure
|
# Passer INSTALL_AI_LIBS=true dans le docker-compose pour les inclure
|
||||||
|
|
@ -55,50 +55,50 @@ RUN pip install --no-cache-dir -r requirements/base.txt && \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 1. Copie des répertoires volumineux et statiques (très bonne mise en cache)
|
# 1. Copie des répertoires volumineux et statiques (très bonne mise en cache)
|
||||||
COPY streetup/scripts/ /app/scripts/
|
COPY loko/scripts/ /app/scripts/
|
||||||
COPY streetup/common/ /app/common/
|
COPY loko/common/ /app/common/
|
||||||
COPY streetup/home/ /app/home/
|
COPY loko/home/ /app/home/
|
||||||
|
|
||||||
# 2. Copie des modules de l'application qui changent rarement
|
# 2. Copie des modules de l'application qui changent rarement
|
||||||
COPY streetup/locale/ /app/locale/
|
COPY loko/locale/ /app/locale/
|
||||||
COPY streetup/templates/ /app/templates/
|
COPY loko/templates/ /app/templates/
|
||||||
COPY streetup/analytics/ /app/analytics/
|
COPY loko/analytics/ /app/analytics/
|
||||||
COPY streetup/api/ /app/api/
|
COPY loko/api/ /app/api/
|
||||||
COPY streetup/authorizations/ /app/authorizations/
|
COPY loko/authorizations/ /app/authorizations/
|
||||||
COPY streetup/contracts/ /app/contracts/
|
COPY loko/contracts/ /app/contracts/
|
||||||
COPY streetup/documents/ /app/documents/
|
COPY loko/documents/ /app/documents/
|
||||||
COPY streetup/maps/ /app/maps/
|
COPY loko/maps/ /app/maps/
|
||||||
COPY streetup/notifications/ /app/notifications/
|
COPY loko/notifications/ /app/notifications/
|
||||||
COPY streetup/projects/ /app/projects/
|
COPY loko/projects/ /app/projects/
|
||||||
COPY streetup/reporting/ /app/reporting/
|
COPY loko/reporting/ /app/reporting/
|
||||||
COPY streetup/bim/ /app/bim/
|
COPY loko/bim/ /app/bim/
|
||||||
COPY streetup/sign/ /app/sign/
|
COPY loko/sign/ /app/sign/
|
||||||
COPY streetup/stock/ /app/stock/
|
COPY loko/stock/ /app/stock/
|
||||||
|
|
||||||
# 3. Copie des modules actifs ou modifiés fréquemment
|
# 3. Copie des modules actifs ou modifiés fréquemment
|
||||||
COPY streetup/streetup/ /app/streetup/
|
COPY loko/loko/ /app/loko/
|
||||||
COPY streetup/mobile/ /app/mobile/
|
COPY loko/mobile/ /app/mobile/
|
||||||
COPY streetup/observations/ /app/observations/
|
COPY loko/observations/ /app/observations/
|
||||||
COPY streetup/controls/ /app/controls/
|
COPY loko/controls/ /app/controls/
|
||||||
COPY streetup/interventions/ /app/interventions/
|
COPY loko/interventions/ /app/interventions/
|
||||||
COPY streetup/assets/ /app/assets/
|
COPY loko/assets/ /app/assets/
|
||||||
COPY streetup/panoramax/ /app/panoramax/
|
COPY loko/panoramax/ /app/panoramax/
|
||||||
|
|
||||||
# 4. Copie des fichiers de code de road_detection (sans réimporter les modèles de détection)
|
# 4. Copie des fichiers de code de road_detection (sans réimporter les modèles de détection)
|
||||||
COPY streetup/road_detection/__init__.py /app/road_detection/
|
COPY loko/road_detection/__init__.py /app/road_detection/
|
||||||
COPY streetup/road_detection/admin.py /app/road_detection/
|
COPY loko/road_detection/admin.py /app/road_detection/
|
||||||
COPY streetup/road_detection/apps.py /app/road_detection/
|
COPY loko/road_detection/apps.py /app/road_detection/
|
||||||
COPY streetup/road_detection/detection.py /app/road_detection/
|
COPY loko/road_detection/detection.py /app/road_detection/
|
||||||
COPY streetup/road_detection/forms.py /app/road_detection/
|
COPY loko/road_detection/forms.py /app/road_detection/
|
||||||
COPY streetup/road_detection/models.py /app/road_detection/
|
COPY loko/road_detection/models.py /app/road_detection/
|
||||||
COPY streetup/road_detection/urls.py /app/road_detection/
|
COPY loko/road_detection/urls.py /app/road_detection/
|
||||||
COPY streetup/road_detection/views.py /app/road_detection/
|
COPY loko/road_detection/views.py /app/road_detection/
|
||||||
COPY streetup/road_detection/migrations/ /app/road_detection/migrations/
|
COPY loko/road_detection/migrations/ /app/road_detection/migrations/
|
||||||
COPY streetup/road_detection/templates/ /app/road_detection/templates/
|
COPY loko/road_detection/templates/ /app/road_detection/templates/
|
||||||
|
|
||||||
# 5. Copie des fichiers Python et de configuration restants à la racine
|
# 5. Copie des fichiers Python et de configuration restants à la racine
|
||||||
COPY streetup/*.py /app/
|
COPY loko/*.py /app/
|
||||||
COPY streetup/generated_passwords.txt* /app/
|
COPY loko/generated_passwords.txt* /app/
|
||||||
|
|
||||||
# Exposer le port par défaut
|
# Exposer le port par défaut
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# StreetUp — Asset Management pour l'espace public
|
# Loko — Asset Management pour l'espace public
|
||||||
|
|
||||||
**StreetUp** est une application web complète de gestion des actifs de l'espace public. Elle permet aux administrations publiques, gestionnaires d'infrastructures et prestataires de maintenance de cartographier, de suivre et de maintenir l'ensemble des équipements et infrastructures présents sur l'espace public.
|
**Loko** est une application web complète de gestion des actifs de l'espace public. Elle permet aux administrations publiques, gestionnaires d'infrastructures et prestataires de maintenance de cartographier, de suivre et de maintenir l'ensemble des équipements et infrastructures présents sur l'espace public.
|
||||||
|
|
||||||
Le projet est publié sous licence libre **EUPL (European Union Public Licence)**.
|
Le projet est publié sous licence libre **EUPL (European Union Public Licence)**.
|
||||||
|
|
||||||
|
|
@ -17,7 +17,7 @@ Le projet est propulsé par **Django** et s'appuie sur une base de données **Po
|
||||||
|
|
||||||
## 🚦 Thématiques Gérées
|
## 🚦 Thématiques Gérées
|
||||||
|
|
||||||
StreetUp permet de modéliser et de localiser précisément les équipements liés à plusieurs domaines de la voirie :
|
Loko permet de modéliser et de localiser précisément les équipements liés à plusieurs domaines de la voirie :
|
||||||
|
|
||||||
* **Bâtiments** : Bâtiments publics, gestion des salles, etc.
|
* **Bâtiments** : Bâtiments publics, gestion des salles, etc.
|
||||||
* **Espaces extérieurs** : Plaines de jeux, terrains de sport extérieurs, etc.
|
* **Espaces extérieurs** : Plaines de jeux, terrains de sport extérieurs, etc.
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>Documentation StreetUp</title>
|
<title>Documentation Loko</title>
|
||||||
<style>
|
<style>
|
||||||
body {
|
body {
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
|
|
@ -112,13 +112,13 @@
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>Documentation de l'application StreetUp</h1></p><p><h2>Table des matières</h2></p><p>1. <a href="#vue-densemble">Vue d'ensemble</a>
|
<h1>Documentation de l'application Loko</h1></p><p><h2>Table des matières</h2></p><p>1. <a href="#vue-densemble">Vue d'ensemble</a>
|
||||||
2. <a href="#architecture-de-lapplication">Architecture de l'application</a>
|
2. <a href="#architecture-de-lapplication">Architecture de l'application</a>
|
||||||
3. <a href="#modules-django">Modules Django</a>
|
3. <a href="#modules-django">Modules Django</a>
|
||||||
4. <a href="#schéma-des-modèles-et-relations">Schéma des modèles et relations</a>
|
4. <a href="#schéma-des-modèles-et-relations">Schéma des modèles et relations</a>
|
||||||
5. <a href="#détail-des-modèles-par-module">Détail des modèles par module</a>
|
5. <a href="#détail-des-modèles-par-module">Détail des modèles par module</a>
|
||||||
6. <a href="#flux-de-données">Flux de données</a>
|
6. <a href="#flux-de-données">Flux de données</a>
|
||||||
7. <a href="#diagrammes">Diagrammes</a></p><p>---</p><p><h2>Vue d'ensemble</h2></p><p><strong>StreetUp</strong> est un système complet de gestion des actifs de voirie (Street Asset Management System). L'application permet de gérer, suivre et maintenir différents types d'infrastructures de rue telles que :</p><p><ul>
|
7. <a href="#diagrammes">Diagrammes</a></p><p>---</p><p><h2>Vue d'ensemble</h2></p><p><strong>Loko</strong> est un système complet de gestion des actifs de voirie (Street Asset Management System). L'application permet de gérer, suivre et maintenir différents types d'infrastructures de rue telles que :</p><p><ul>
|
||||||
<li><strong>Feux de signalisation</strong> (Traffic Lights)</li>
|
<li><strong>Feux de signalisation</strong> (Traffic Lights)</li>
|
||||||
<li><strong>Éclairage public</strong> (Public Lighting)</li>
|
<li><strong>Éclairage public</strong> (Public Lighting)</li>
|
||||||
<li><strong>Panneaux de signalisation</strong> (Road Signs)</li>
|
<li><strong>Panneaux de signalisation</strong> (Road Signs)</li>
|
||||||
|
|
@ -128,8 +128,8 @@
|
||||||
<li><strong>Patrimoine artistique</strong> (Artworks - monuments, fontaines)</li>
|
<li><strong>Patrimoine artistique</strong> (Artworks - monuments, fontaines)</li>
|
||||||
<li><strong>ITS - Systèmes de transport intelligents</strong> (Intelligent Transport Systems)</li>
|
<li><strong>ITS - Systèmes de transport intelligents</strong> (Intelligent Transport Systems)</li>
|
||||||
<li><strong>Chaussées, trottoirs et mobilier urbain</strong> (Roads)</li>
|
<li><strong>Chaussées, trottoirs et mobilier urbain</strong> (Roads)</li>
|
||||||
</ul></p><p>L'application est construite avec <strong>Django</strong> et utilise <strong>PostGIS</strong> pour la gestion des données géospatiales.</p><p>---</p><p><h2>Architecture de l'application</h2></p><p><pre><code class="">streetup/
|
</ul></p><p>L'application est construite avec <strong>Django</strong> et utilise <strong>PostGIS</strong> pour la gestion des données géospatiales.</p><p>---</p><p><h2>Architecture de l'application</h2></p><p><pre><code class="">loko/
|
||||||
├── streetup/ # Configuration principale Django
|
├── loko/ # Configuration principale Django
|
||||||
│ ├── settings.py # Paramètres de l'application
|
│ ├── settings.py # Paramètres de l'application
|
||||||
│ ├── urls.py # Routes principales
|
│ ├── urls.py # Routes principales
|
||||||
│ └── wsgi.py # Point d'entrée WSGI
|
│ └── wsgi.py # Point d'entrée WSGI
|
||||||
|
|
@ -697,7 +697,7 @@
|
||||||
│ContractPost │◄──────┘
|
│ContractPost │◄──────┘
|
||||||
└─────────────┘
|
└─────────────┘
|
||||||
</code></pre></p><p>---</p><p><h2>Diagrammes</h2></p><p><h3>Architecture globale</h3></p><p><pre><code class="">┌─────────────────────────────────────────────────────────────────────────────────────┐
|
</code></pre></p><p>---</p><p><h2>Diagrammes</h2></p><p><h3>Architecture globale</h3></p><p><pre><code class="">┌─────────────────────────────────────────────────────────────────────────────────────┐
|
||||||
│ STREETUP │
|
│ LOKO │
|
||||||
│ Système de gestion des actifs de voirie │
|
│ Système de gestion des actifs de voirie │
|
||||||
├─────────────────────────────────────────────────────────────────────────────────────┤
|
├─────────────────────────────────────────────────────────────────────────────────────┤
|
||||||
│ │
|
│ │
|
||||||
|
|
@ -847,7 +847,7 @@
|
||||||
</ul></p><p><h3>API</h3></p><p><ul>
|
</ul></p><p><h3>API</h3></p><p><ul>
|
||||||
<li>Module <code>api/</code> pour les endpoints REST</li>
|
<li>Module <code>api/</code> pour les endpoints REST</li>
|
||||||
<li>Support de l'interface mobile</li>
|
<li>Support de l'interface mobile</li>
|
||||||
</ul></p><p>---</p><p><h2>Conclusion</h2></p><p>StreetUp est une application Django complète et modulaire qui permet de gérer l'ensemble du cycle de vie des actifs de voirie. La structure en modules permet une maintenance facile et une évolution progressive des fonctionnalités.</p><p>Les principaux points forts de l'architecture sont :</p><p>1. <strong>Modularité</strong> : Chaque domaine métier est isolé dans son propre module Django
|
</ul></p><p>---</p><p><h2>Conclusion</h2></p><p>Loko est une application Django complète et modulaire qui permet de gérer l'ensemble du cycle de vie des actifs de voirie. La structure en modules permet une maintenance facile et une évolution progressive des fonctionnalités.</p><p>Les principaux points forts de l'architecture sont :</p><p>1. <strong>Modularité</strong> : Chaque domaine métier est isolé dans son propre module Django
|
||||||
2. <strong>Extensibilité</strong> : Les classes abstraites permettent d'ajouter facilement de nouveaux types d'actifs
|
2. <strong>Extensibilité</strong> : Les classes abstraites permettent d'ajouter facilement de nouveaux types d'actifs
|
||||||
3. <strong>Traçabilité</strong> : Historique complet des interventions et des modifications
|
3. <strong>Traçabilité</strong> : Historique complet des interventions et des modifications
|
||||||
4. <strong>Géolocalisation</strong> : Support natif des données géospatiales avec PostGIS
|
4. <strong>Géolocalisation</strong> : Support natif des données géospatiales avec PostGIS
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,21 @@
|
||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
image: postgis/postgis:18-3.6
|
image: postgis/postgis:18-3.6
|
||||||
container_name: streetup_core_db
|
container_name: loko_db
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- "5436:5432" # Mappé sur le port 5436 de l'hôte
|
- "5436:5432" # Mappé sur le port 5436 de l'hôte
|
||||||
env_file:
|
env_file:
|
||||||
- ./streetup/.env
|
- ./loko/.env
|
||||||
environment:
|
environment:
|
||||||
POSTGRES_DB: ${DB_NAME:-streetup}
|
POSTGRES_DB: ${DB_NAME:-loko}
|
||||||
POSTGRES_USER: ${DB_USER:-admin}
|
POSTGRES_USER: ${DB_USER:-admin}
|
||||||
POSTGRES_PASSWORD: ${DB_PASSWORD:?La variable DB_PASSWORD est obligatoire dans le fichier .env}
|
POSTGRES_PASSWORD: ${DB_PASSWORD:?La variable DB_PASSWORD est obligatoire dans le fichier .env}
|
||||||
volumes:
|
volumes:
|
||||||
- streetup_core_db_data:/var/lib/postgresql
|
- loko_db_data:/var/lib/postgresql
|
||||||
- ./streetup/scripts/init-db.sql:/docker-entrypoint-initdb.d/init-db.sql:ro
|
- ./loko/scripts/init-db.sql:/docker-entrypoint-initdb.d/init-db.sql:ro
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: [ "CMD-SHELL", "pg_isready -U ${DB_USER:-admin} -d ${DB_NAME:-streetup}" ]
|
test: [ "CMD-SHELL", "pg_isready -U ${DB_USER:-admin} -d ${DB_NAME:-loko}" ]
|
||||||
interval: 10s
|
interval: 10s
|
||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
|
@ -27,25 +27,25 @@ services:
|
||||||
args:
|
args:
|
||||||
# Mettre "true" pour installer ultralytics, OpenCV et PyTorch dans l'image
|
# Mettre "true" pour installer ultralytics, OpenCV et PyTorch dans l'image
|
||||||
INSTALL_AI_LIBS: "false"
|
INSTALL_AI_LIBS: "false"
|
||||||
container_name: streetup_core_web
|
container_name: loko_web
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
command: python manage.py runserver 0.0.0.0:8000
|
command: python manage.py runserver 0.0.0.0:8000
|
||||||
ports:
|
ports:
|
||||||
- "8003:8000" # Mappé sur le port 8003 de l'hôte
|
- "8003:8000" # Mappé sur le port 8003 de l'hôte
|
||||||
volumes:
|
volumes:
|
||||||
- ./streetup:/app # Volume mount pour le hot-reload local
|
- ./loko:/app # Volume mount pour le hot-reload local
|
||||||
- streetup_core_media:/app/media
|
- loko_media:/app/media
|
||||||
- streetup_core_private_media:/app/private_media
|
- loko_private_media:/app/private_media
|
||||||
env_file:
|
env_file:
|
||||||
- ./streetup/.env # Chargement du fichier d'environnement local
|
- ./loko/.env # Chargement du fichier d'environnement local
|
||||||
environment:
|
environment:
|
||||||
# Surcharges d'environnement internes au conteneur pour cibler la base du conteneur "db"
|
# Surcharges d'environnement internes au conteneur pour cibler la base du conteneur "db"
|
||||||
- DB_HOST=db
|
- DB_HOST=db
|
||||||
- DB_PORT=5432
|
- DB_PORT=5432
|
||||||
# Surcharges des chemins GIS internes au conteneur pour écraser ceux de l'hôte issus du .env
|
# Surcharges des chemins GIS internes au conteneur pour écraser ceux de l'hôte issus du .env
|
||||||
- GDAL_LIBRARY_PATH=/opt/conda/envs/streetup-env/lib/libgdal.so
|
- GDAL_LIBRARY_PATH=/opt/conda/envs/loko-env/lib/libgdal.so
|
||||||
- GEOS_LIBRARY_PATH=/opt/conda/envs/streetup-env/lib/libgeos_c.so
|
- GEOS_LIBRARY_PATH=/opt/conda/envs/loko-env/lib/libgeos_c.so
|
||||||
- PROJ_DATA=/opt/conda/envs/streetup-env/share/proj
|
- PROJ_DATA=/opt/conda/envs/loko-env/share/proj
|
||||||
# Correction du chemin des logs pour rester dans le conteneur
|
# Correction du chemin des logs pour rester dans le conteneur
|
||||||
- LOG_FILE_PATH=/app/django.log
|
- LOG_FILE_PATH=/app/django.log
|
||||||
depends_on:
|
depends_on:
|
||||||
|
|
@ -54,20 +54,20 @@ services:
|
||||||
|
|
||||||
caddy:
|
caddy:
|
||||||
image: caddy:latest
|
image: caddy:latest
|
||||||
container_name: streetup_core_caddy
|
container_name: loko_caddy
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- "8083:80" # Mappé sur le port 8083 de l'hôte
|
- "8083:80" # Mappé sur le port 8083 de l'hôte
|
||||||
volumes:
|
volumes:
|
||||||
- ./Caddyfile:/etc/caddy/Caddyfile
|
- ./Caddyfile:/etc/caddy/Caddyfile
|
||||||
- streetup_core_caddy_data:/data
|
- loko_caddy_data:/data
|
||||||
- streetup_core_caddy_config:/config
|
- loko_caddy_config:/config
|
||||||
depends_on:
|
depends_on:
|
||||||
- web
|
- web
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
streetup_core_db_data:
|
loko_db_data:
|
||||||
streetup_core_media:
|
loko_media:
|
||||||
streetup_core_private_media:
|
loko_private_media:
|
||||||
streetup_core_caddy_data:
|
loko_caddy_data:
|
||||||
streetup_core_caddy_config:
|
loko_caddy_config:
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
# "command: python manage.py runserver ..." dans docker-compose.yml.
|
# "command: python manage.py runserver ..." dans docker-compose.yml.
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
exec gunicorn streetup.wsgi:application \
|
exec gunicorn loko.wsgi:application \
|
||||||
--bind 0.0.0.0:8000 \
|
--bind 0.0.0.0:8000 \
|
||||||
--workers "${GUNICORN_WORKERS:-4}" \
|
--workers "${GUNICORN_WORKERS:-4}" \
|
||||||
--threads "${GUNICORN_THREADS:-2}" \
|
--threads "${GUNICORN_THREADS:-2}" \
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ ROOT_URL=
|
||||||
# - Pour un usage local (hors Docker) : DB_HOST=127.0.0.1, DB_PORT=5432
|
# - Pour un usage local (hors Docker) : DB_HOST=127.0.0.1, DB_PORT=5432
|
||||||
DB_HOST=
|
DB_HOST=
|
||||||
DB_PORT=
|
DB_PORT=
|
||||||
DB_NAME=
|
DB_NAME=loko
|
||||||
DB_USER=
|
DB_USER=
|
||||||
DB_PASSWORD=
|
DB_PASSWORD=
|
||||||
|
|
||||||
|
|
@ -23,9 +23,9 @@ DB_PASSWORD=
|
||||||
# GDAL_LIBRARY_PATH=/chemin/vers/miniconda3/envs/.../lib/libgdal.so
|
# GDAL_LIBRARY_PATH=/chemin/vers/miniconda3/envs/.../lib/libgdal.so
|
||||||
# GEOS_LIBRARY_PATH=/chemin/vers/miniconda3/envs/.../lib/libgeos_c.so
|
# GEOS_LIBRARY_PATH=/chemin/vers/miniconda3/envs/.../lib/libgeos_c.so
|
||||||
# - Docker (Miniforge/Conda interne - défini par défaut dans le Dockerfile) :
|
# - Docker (Miniforge/Conda interne - défini par défaut dans le Dockerfile) :
|
||||||
# GDAL_LIBRARY_PATH=/opt/conda/envs/streetup-env/lib/libgdal.so
|
# GDAL_LIBRARY_PATH=/opt/conda/envs/loko-env/lib/libgdal.so
|
||||||
# GEOS_LIBRARY_PATH=/opt/conda/envs/streetup-env/lib/libgeos_c.so
|
# GEOS_LIBRARY_PATH=/opt/conda/envs/loko-env/lib/libgeos_c.so
|
||||||
# PROJ_DATA=/opt/conda/envs/streetup-env/share/proj
|
# PROJ_DATA=/opt/conda/envs/loko-env/share/proj
|
||||||
|
|
||||||
EMAIL_HOST=
|
EMAIL_HOST=
|
||||||
EMAIL_PORT=
|
EMAIL_PORT=
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue