El sistema de reserva de entradas de código abierto.
Alf.io ([ˈalfjo]) es un sistema de gestión de asistencia a eventos gratuito y de código abierto, desarrollado para organizadores de eventos que se preocupan por la privacidad, la seguridad y la política de precios justos para sus clientes.
Debería haber instalado Java versión 17 (por ejemplo, Oracle, OpenJDK o cualquier otra distribución) para compilar y ejecutar alf.io. Tenga en cuenta que para el proceso de compilación se requiere el JDK.
Postgresql versión 10 o posterior.
Además, el usuario de la base de datos que crea y utiliza las tablas no debe ser un "SUPERUSUARIO"; de lo contrario, no se aplicarán las comprobaciones de la política de seguridad de filas.
Nota
Dado que el trabajo para Alf.io v2 ha comenzado, esta rama puede contener código inestable y no probado . Si desea crear e implementar alf.io usted mismo, comience desde una versión publicada.
Existen los siguientes perfiles de resorte.
dev
: habilitar el modo de desarrollospring-boot
: agregado cuando se inicia con spring-bootdemo
: habilite el modo de demostración, las cuentas para el administrador se crearán sobre la marchadisable-jobs
: desactivar trabajosjdbc-session
: persiste la sesión del usuario en la base de datos Esta compilación incluye una copia del contenedor de Gradle. No es necesario tener Gradle instalado en su sistema para compilar el proyecto. Simplemente ejecute el contenedor junto con la tarea adecuada, por ejemplo
./gradlew clean
Debe especificar una propiedad del proyecto en la línea de comando, como
./gradlew -Pprofile=dev :bootRun
La tarea local "bootRun" tiene los siguientes requisitos previos:
docker run -d --name alfio-db -p 5432:5432 -e POSTGRES_PASSWORD=password -e POSTGRES_DB=alfio --restart unless-stopped postgres
Una vez iniciado, alf.io creará todas las tablas necesarias en la base de datos y estará disponible en http://localhost:8080/admin. Puede iniciar sesión con el nombre de usuario predeterminado admin y la contraseña que estaba impresa en la consola.
Puede obtener una lista de todas las tareas de Gradle compatibles ejecutando
./gradlew tasks --all
Puede configurar propiedades adicionales del sistema (si las necesita) creando el siguiente archivo y colocando en él una propiedad por línea:
vi custom.jvmargs
Tenga en cuenta que, dado que este archivo podría contener información confidencial (como la clave API privada de Google Maps), Git lo ignorará automáticamente.
Agregue una nueva línea con: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
en custom.jvmargs
Importar el proyecto Gradle a Intellij y Eclipse funciona.
Notas :
Como los TestContainers esperan que el socket de la ventana acoplable administre los contenedores, deberá hacer lo siguiente (consulte la edición original para obtener más detalles):
Defina los 2 entornos. variable:
export TESTCONTAINERS_RYUK_DISABLED=true
export DOCKER_HOST=unix:///run/user/1000/podman/podman.sock
Y ejecutar en otra consola:
podman system service -t 0
A tener en cuenta:
./gradlew dependencyUpdates
Las imágenes de contenedores están disponibles en https://hub.docker.com/r/alfio/alf.io/tags.
alf.io también se puede ejecutar con Docker Compose ( modo de desarrollo ):
docker-compose up
No se admite oficialmente la ejecución de alf.io en producción mediante Docker Compose. Sin embargo, si decide hacerlo, deberá realizar un par de cambios:
alfio
en el archivo docker-compose.yml
.env
tutum/haproxy
) 443 -> 8080docker logs alfio
boot2docker IP
en Mac/Windowshttps://DOCKER_IP/admin
./gradlew distribution
Alternativamente, puedes usar 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
Tenga en cuenta que en este momento el comando anterior realiza la compilación sin ejecutar las pruebas automatizadas. Úselo bajo su propio riesgo.
docker build -t alfio/alf.io ./build/dockerize
El certificado en src/main/resources/alfio/certificates/AppleWWDRCAG4.cer se importó para la funcionalidad https://github.com/ryantenney/passkit4j#usage. Caducará el 2030-10-12 (AAAA-MM-DD - a partir de https://www.apple.com/certificateauthority/).
Este proyecto existe gracias a todas las personas que contribuyen.
Un gran "gracias" también para nuestros traductores, que nos ayudan en POEditor:
(mostramos el nombre/perfil completo sólo si hemos recibido el consentimiento explícito para hacerlo)
Idioma | Nombre | Github | Gorjeo |
---|---|---|---|
holandés (NL) | matthjis | ||
turco (tr) | Dilek | ||
español (es) | Mario Varona | @mvarona | @MarioVarona |
español (es) | Sergi Almar | @salmar | @sergialmar |
español (es) | Jeremías | ||
búlgaro (bg) | Martín Zhekov | @martin03 | @MartensZone |
portugués (pt) | hugo | ||
sueco (sv) | johan | ||
rumano (ro) | Daniel | ||
polaco (pl) | Pawel | ||
danés (da) | sol |
traducciones completadas pero aún no integradas (WIP)
Idioma | Nombre | Github | Gorjeo |
---|---|---|---|
japonés (jp) | Martín | ||
Chino (Taiwán) (cn_TW) | Yu-cheng, Lin |
Este proyecto está patrocinado por:
Conviértase en un contribuyente financiero y ayúdenos a sostener nuestra comunidad. [Contribuir]
Apoye este proyecto con su organización. Su logotipo aparecerá aquí con un enlace a su sitio web. [Contribuir]