Le système de réservation de billets open source.
Alf.io ([ˈalfjo]) est un système de gestion de participation à des événements gratuit et open source, développé pour les organisateurs d'événements soucieux de la confidentialité, de la sécurité et d'une politique de tarification équitable pour leurs clients.
Vous devez avoir installé Java version 17 (par exemple Oracle, OpenJDK ou toute autre distribution) pour créer et exécuter alf.io. Veuillez noter que pour le processus de construction, le JDK est requis.
Postgresql version 10 ou ultérieure.
De plus, l'utilisateur de la base de données qui crée et utilise les tables ne doit pas être un « SUPERUTILISATEUR », sinon les vérifications de la politique de sécurité des lignes ne seront pas appliquées.
Note
Comme le travail pour Alf.io v2 a commencé, cette branche peut contenir du code instable et non testé . Si vous souhaitez créer et déployer alf.io par vous-même, veuillez commencer à partir d'une version publiée.
Il existe les profils de ressort suivants
dev
: activer le mode développementspring-boot
: ajouté au lancement par spring-bootdemo
: activez le mode démo, les comptes de l'administrateur seront créés à la voléedisable-jobs
: désactiver les tâchesjdbc-session
: conserver la session utilisateur dans la base de données Cette version inclut une copie du wrapper Gradle. Vous n'avez pas besoin d'installer Gradle sur votre système pour créer le projet. Exécutez simplement le wrapper avec la tâche appropriée, par exemple
./gradlew clean
Vous devez spécifier une propriété de projet sur la ligne de commande, telle que
./gradlew -Pprofile=dev :bootRun
La tâche locale « bootRun » a les prérequis suivants :
docker run -d --name alfio-db -p 5432:5432 -e POSTGRES_PASSWORD=password -e POSTGRES_DB=alfio --restart unless-stopped postgres
une fois démarré, alf.io créera toutes les tables requises dans la base de données et sera disponible sur http://localhost:8080/admin. Vous pouvez vous connecter en utilisant le nom d'utilisateur par défaut admin et le mot de passe imprimé sur la console.
Vous pouvez obtenir une liste de toutes les tâches Gradle prises en charge en exécutant
./gradlew tasks --all
Vous pouvez configurer des propriétés système supplémentaires (si vous en avez besoin) en créant le fichier suivant et en y insérant une propriété par ligne :
vi custom.jvmargs
Veuillez noter que ce fichier pouvant contenir des informations sensibles (telles que la clé API privée de Google Maps), il sera automatiquement ignoré par git.
Ajoutez une nouvelle ligne avec : -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
dans custom.jvmargs
L'importation du projet Gradle dans Intellij et Eclipse fonctionne tous les deux.
Remarques :
Comme TestContainers attend le socket docker pour gérer les conteneurs, vous devrez procéder comme suit (voir le numéro d'origine pour plus de détails) :
Définir les 2 env. variable:
export TESTCONTAINERS_RYUK_DISABLED=true
export DOCKER_HOST=unix:///run/user/1000/podman/podman.sock
Et exécutez dans une autre console :
podman system service -t 0
A noter :
./gradlew dependencyUpdates
Les images de conteneurs sont disponibles sur https://hub.docker.com/r/alfio/alf.io/tags.
alf.io peut également être exécuté avec Docker Compose ( mode développement ) :
docker-compose up
L'exécution d'alf.io en production à l'aide de Docker compose n'est pas officiellement prise en charge. Cependant, si vous décidez de le faire, vous devez alors apporter quelques modifications :
alfio
dans le fichier docker-compose.yml
.env
tutum/haproxy
) 443 -> 8080docker logs alfio
boot2docker IP
sur Mac/Windowshttps://DOCKER_IP/admin
./gradlew distribution
Alternativement, vous pouvez utiliser Docker ( experimental ) :
docker run --rm -u gradle -v "$PWD":/home/gradle/project -w /home/gradle/project gradle:7.0.0-jdk11 gradle --no-daemon distribution -x test
Veuillez noter qu'à l'heure actuelle, la commande ci-dessus effectue la construction sans exécuter les tests automatisés. Utilisez-le à vos propres risques.
docker build -t alfio/alf.io ./build/dockerize
Le certificat sur src/main/resources/alfio/certificates/AppleWWDRCAG4.cer a été importé pour la fonctionnalité https://github.com/ryantenney/passkit4j#usage. Il expirera le 2030-10-12 (AAAA-MM-JJ - à partir de https://www.apple.com/certificateauthority/).
Ce projet existe grâce à toutes les personnes qui y contribuent.
Un grand "Merci" va également à nos traducteurs, qui nous aident sur POEditor :
(nous montrons le nom/profil complet uniquement si nous avons reçu le consentement explicite pour le faire)
Langue | Nom | GitHub | Gazouillement |
---|---|---|---|
néerlandais (nl) | Matthjis | ||
Turc (tr) | Dilek | ||
Espagnol (es) | Mario Varona | @mvarona | @MarioVarona |
Espagnol (es) | Sergi Almar | @salmar | @sergialmar |
Espagnol (es) | Jérémie | ||
Bulgare (bg) | Martin Jekov | @Martin03 | @MartensZone |
Portugais (pt) | Hugo | ||
suédois (sv) | Johan | ||
Roumain (ro) | Daniel | ||
Polonais (pl) | Pawel | ||
danois (da) | Soleil |
traductions terminées mais pas encore intégrées (WIP)
Langue | Nom | GitHub | Gazouillement |
---|---|---|---|
Japonais (jp) | Martine | ||
Chinois (Taïwan) (cn_TW) | Yu-cheng, Lin |
Ce projet est sponsorisé par :
Devenez un contributeur financier et aidez-nous à pérenniser notre communauté. [Contribuer]
Soutenez ce projet avec votre organisation. Votre logo apparaîtra ici avec un lien vers votre site Web. [Contribuer]