mirror of
https://gitlab.com/animath/si/plateforme.git
synced 2025-07-02 03:18:32 +02:00
Clone Corres2math platform
This commit is contained in:
70
README.md
Normal file
70
README.md
Normal file
@ -0,0 +1,70 @@
|
||||
# Plateforme du TFJM²
|
||||
|
||||
[](https://gitlab.com/animath/si/plateforme-tfjm/-/commits/master)
|
||||
[](https://gitlab.com/animath/si/plateforme-tfjm/-/commits/master)
|
||||
|
||||
La plateforme du TFJM² est née pour la dixième édition en 2019 de l'action.
|
||||
D'abord codée en PHP, elle a subi une refonte totale en Python, à l'aide du framework Web [Django](https://www.djangoproject.com/).
|
||||
|
||||
Cette plateforme permet aux participants et encadrants de s'inscrire et de déposer leurs autorisations nécessaires.
|
||||
Ils pourront ensuite déposer leurs solutions et notes de synthèse pour le premier tour en temps voulu. La plateforme
|
||||
offre également un accès pour les organisateurs et les jurys leur permettant de communiquer avec les équipes et de
|
||||
récupérer les documents nécessaires.
|
||||
|
||||
Un wiki plus détaillé arrivera ultérieurement. L'interface organisateur et jury est vouée à être plus poussée.
|
||||
|
||||
L'instance de production est disponible à l'adresse [inscription.tfjm.org](https://inscription.tfjm.org).
|
||||
|
||||
## Installation
|
||||
|
||||
Le plus simple pour installer la plateforme est d'utiliser l'image Docker incluse, qui fait tourner un serveur Nginx
|
||||
exposé sur le port 80 avec le serveur Django. Ci-dessous une configuration Docker-Compose, à adapter selon vos besoins :
|
||||
|
||||
```yaml
|
||||
plateforme-tfjm:
|
||||
build: https://gitlab.com/animath/si/plateforme-tfjm.git
|
||||
links:
|
||||
- postgres
|
||||
ports:
|
||||
- "80:80"
|
||||
env_file:
|
||||
- ./inscription-tfjm.env
|
||||
volumes:
|
||||
# - ./inscription-tfjm:/code
|
||||
- ./inscription-tfjm/media:/code/media
|
||||
```
|
||||
|
||||
Le volume `/code` n'est à ajouter uniquement en développement, et jamais en production.
|
||||
|
||||
Il faut remplir les variables d'environnement suivantes :
|
||||
|
||||
```env
|
||||
TFJM_STAGE= # dev ou prod
|
||||
DJANGO_DB_TYPE= # MySQL, PostgreSQL ou SQLite (par défaut)
|
||||
DJANGO_DB_HOST= # Hôte de la base de données
|
||||
DJANGO_DB_NAME= # Nom de la base de données
|
||||
DJANGO_DB_USER= # Utilisateur de la base de données
|
||||
DJANGO_DB_PASSWORD= # Mot de passe pour accéder à la base de données
|
||||
SMTP_HOST= # Hôte SMTP pour l'envoi de mails
|
||||
SMTP_PORT=465 # Port du serveur SMTP
|
||||
SMTP_HOST_USER= # Utilisateur du compte SMTP
|
||||
SMTP_HOST_PASSWORD= # Mot de passe du compte SMTP
|
||||
FROM_EMAIL=contact@tfjm.org # Nom de l'expéditeur des mails
|
||||
SERVER_EMAIL=contact@tfjm.org # Adresse e-mail expéditrice
|
||||
SYMPA_URL=lists.example.com # Serveur Sympa à utiliser
|
||||
SYMPA_EMAIL= # Adresse e-mail du compte administrateur de Sympa
|
||||
SYMPA_PASSWORD= # Mot de passe du compte administrateur de Sympa
|
||||
SYNAPSE_PASSWORD= # Mot de passe du robot Matrix
|
||||
```
|
||||
|
||||
Si le type de base de données sélectionné est SQLite, la variable `DJANGO_DB_HOST` sera utilisée en guise de chemin vers
|
||||
le fichier de base de données (par défaut, `db.sqlite3`).
|
||||
|
||||
En développement, il est recommandé d'utiliser SQLite pour des raisons de simplicité. Les paramètres de mail ne seront
|
||||
pas utilisés, et les mails qui doivent être envoyés seront envoyés dans la console. Les intégrations mail et Matrix
|
||||
seront également désactivées.
|
||||
|
||||
En production, il est recommandé de ne pas utiliser SQLite pour des raisons de performances.
|
||||
|
||||
La dernière différence entre le développment et la production est qu'en développement, chaque modification d'un fichier
|
||||
est détectée et le serveur se relance automatiquement dès lors.
|
Reference in New Issue
Block a user