Система бронирования билетов с открытым исходным кодом.
Alf.io ([ˈalfjo]) — бесплатная система управления посещаемостью мероприятий с открытым исходным кодом, разработанная для организаторов мероприятий, которые заботятся о конфиденциальности, безопасности и справедливой ценовой политике для своих клиентов.
Для сборки и запуска alf.io у вас должна быть установлена Java версии 17 (например, Oracle, OpenJDK или любой другой дистрибутив). Обратите внимание, что для процесса сборки требуется JDK.
Postgresql версии 10 или новее.
Кроме того, пользователь базы данных, который создает и использует таблицы, не должен быть «СУПЕРПОЛЬЗОВАТЕЛЕМ», иначе проверки политики безопасности строк не будут применяться.
Примечание
Поскольку работа над Alf.io v2 уже началась, эта ветка может содержать нестабильный и непроверенный код. Если вы хотите собрать и развернуть alf.io самостоятельно, начните с выпущенной версии.
Существуют следующие пружинные профили
dev
: включить режим разработкиspring-boot
: добавляется при запуске Spring-Bootdemo
: включить демонстрационный режим, учетные записи администратора будут создаваться на лету.disable-jobs
: отключить заданияjdbc-session
: сохранить сеанс пользователя в базе данных Эта сборка включает копию оболочки Gradle. Для сборки проекта вам не обязательно устанавливать Gradle в вашей системе. Просто выполните обертку вместе с соответствующей задачей, например
./gradlew clean
Вы должны указать свойство проекта в командной строке, например
./gradlew -Pprofile=dev :bootRun
Локальная задача «bootRun» имеет следующие предварительные условия:
docker run -d --name alfio-db -p 5432:5432 -e POSTGRES_PASSWORD=password -e POSTGRES_DB=alfio --restart unless-stopped postgres
После запуска alf.io создаст все необходимые таблицы в базе данных и будет доступен по адресу http://localhost:8080/admin. Вы можете войти в систему, используя имя пользователя администратора по умолчанию и пароль, который был напечатан на консоли.
Вы можете получить список всех поддерживаемых задач Gradle, запустив
./gradlew tasks --all
Вы можете настроить дополнительные свойства системы (если они вам нужны), создав следующий файл и поместив в него по одному свойству в каждой строке:
vi custom.jvmargs
Имейте в виду, что, поскольку этот файл может содержать конфиденциальную информацию (например, закрытый ключ API Карт Google), он будет автоматически игнорироваться git.
Добавьте новую строку с: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005
в custom.jvmargs.
Импорт проекта Gradle в Intellij и Eclipse работает.
Примечания :
Поскольку TestContainers ожидает сокет Docker для управления контейнерами, вам необходимо будет сделать следующее (подробности см. в исходной проблеме):
Определите 2 окружения. переменная:
export TESTCONTAINERS_RYUK_DISABLED=true
export DOCKER_HOST=unix:///run/user/1000/podman/podman.sock
И запустите в другой консоли:
podman system service -t 0
Следует отметить:
./gradlew dependencyUpdates
Образы контейнеров доступны по адресу https://hub.docker.com/r/alfio/alf.io/tags.
alf.io также можно запустить с помощью Docker Compose ( режим разработки ):
docker-compose up
Запуск alf.io в рабочей среде с использованием Docker Compose официально не поддерживается. Однако если вы решили это сделать, то вам необходимо внести пару изменений:
alfio
в файле docker-compose.yml
.env
tutum/haproxy
) 443 -> 8080docker logs alfio
boot2docker IP
на Mac/Windowshttps://DOCKER_IP/admin
./gradlew distribution
Альтернативно вы можете использовать Docker ( экспериментально ):
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
Обратите внимание, что на данный момент приведенная выше команда выполняет сборку без запуска автоматических тестов. Используйте его на свой страх и риск.
docker build -t alfio/alf.io ./build/dockerize
Сертификат по адресу src/main/resources/alfio/certificates/AppleWWDRCAG4.cer был импортирован для функциональности https://github.com/ryantenney/passkit4j#usage. Срок его действия истечет 12 октября 2030 г. (ГГГГ-ММ-ДД — по состоянию на https://www.apple.com/certificateauthority/).
Этот проект существует благодаря всем людям, которые вносят свой вклад.
Большое спасибо также нашим переводчикам, которые помогают нам в POEditor:
(мы показываем полное имя/профиль только в том случае, если получили на это явное согласие)
Язык | Имя | Гитхаб | Твиттер |
---|---|---|---|
Голландский (Нидерланды) | Маттис | ||
турецкий (тр) | Дилек | ||
Испанский (и) | Марио Варона | @mvarona | @МариоВарона |
Испанский (и) | Серджи Альмар | @салмар | @sergialmar |
Испанский (и) | Иеремиас | ||
Болгарский (бг) | Мартин Жеков | @Мартин03 | @MartensZone |
Португальский (пт) | Хьюго | ||
Шведский (sv) | Йохан | ||
Румынский (ро) | Дэниел | ||
Польский (pl) | Павел | ||
Датский (да) | Суне |
переводы завершены, но еще не интегрированы (WIP)
Язык | Имя | Гитхаб | Твиттер |
---|---|---|---|
японский (яп) | Мартин | ||
Китайский (Тайвань) (cn_TW) | Ю-чэн, Линь |
Этот проект спонсируется:
Станьте финансовым спонсором и помогите нам поддержать наше сообщество. [Способствовать]
Поддержите этот проект своей организацией. Здесь появится ваш логотип со ссылкой на ваш сайт. [Способствовать]