Go to file
Pőcze Bence 9ffde6bccb
All checks were successful
rvr-nextgen/pipeline/pr-master This commit looks good
update readme
2023-09-28 13:31:26 +02:00
.vscode initial commit for rvr-nextgen 2023-04-08 00:45:40 +02:00
cache initial commit for rvr-nextgen 2023-04-08 00:45:40 +02:00
database RVRNEXT-43 add migration for transaction payees 2023-06-17 13:14:33 +02:00
docker delete deprecated dockerfiles 2023-09-28 13:21:54 +02:00
mail RVRNEXT-27 delete unused mail templates 2023-05-06 19:49:20 +02:00
public RVRNEXT-11 style improvements 2023-05-28 16:48:38 +02:00
scripts remove deprecated scripts 2023-09-28 13:21:54 +02:00
src install base database in MigrateDatabaseCommand 2023-09-28 13:21:54 +02:00
tests add empty tests folder 2023-04-08 01:58:55 +02:00
views Merge pull request 'create endpoints to get current event and current event new transaction' (!64) from feature/create-endpoint-for-currect-event-redirection into master 2023-07-24 02:08:11 +02:00
.env.example RVRNEXT-2 add new environment variables for jwt rsa keys 2023-04-08 19:20:47 +02:00
.gitattributes initial commit for rvr-nextgen 2023-04-08 00:45:40 +02:00
.gitignore RVRNEXT-2 ignore *.pem files 2023-04-08 19:20:47 +02:00
app.php RVRNEXT-5 fix audit logger for non-web access 2023-04-28 20:58:19 +02:00
composer.json update soko-web 2023-09-28 13:21:54 +02:00
composer.lock update soko-web 2023-09-28 13:21:54 +02:00
docker-compose.yml update docker-compose 2023-09-28 13:21:54 +02:00
Jenkinsfile add docker release stage to pipeline 2023-09-28 13:21:54 +02:00
LICENSE.md initial commit for rvr-nextgen 2023-04-08 00:45:40 +02:00
phpstan.neon initial commit for rvr-nextgen 2023-04-08 00:45:40 +02:00
README.md update readme 2023-09-28 13:31:26 +02:00
rvr restrict oauth access 2023-04-12 00:10:14 +02:00
USED_SOFTWARE initial commit for rvr-nextgen 2023-04-08 00:45:40 +02:00
web.php make short new transaction url even shorter 2023-07-24 21:42:27 +02:00

RVR

Build Status

This is the RVR Application project.

Installation

Set environment variables

The .env file contains several environment variables that are needed by the application to work properly. These should be configured for your environment. Check .env.example for reference.

Important: DEV should NOT be set for production! See section Development if you want to use the application in development mode.

Docker Compose

Create a docker-compose.yml file. The example code below assumes that .env is placed in the same folder.

version: '3'
services:
    app:
        image: git.esoko.eu/esoko/rvr:latest
        depends_on:
            mariadb:
                condition: service_healthy
        ports:
            - 80:80
        volumes:
            - .env:/var/www/rvr/.env
    mariadb:
        image: mariadb:10.3
        volumes:
            - mysql:/var/lib/mysql
        environment:
            MYSQL_ROOT_PASSWORD: 'root'
            MYSQL_DATABASE: 'rvr'
            MYSQL_USER: 'rvr'
            MYSQL_PASSWORD: 'rvr'
        healthcheck:
            test: ["CMD-SHELL", "mysqladmin -u $$MYSQL_USER -p$$MYSQL_PASSWORD ping -h localhost || exit 1"]
            start_period: 5s
            start_interval: 1s
            interval: 5s
            timeout: 5s
            retries: 5
volumes:
    mysql:

Execute the following command:

docker compose up -d

And you are done! The application is ready to use. You can create the first administrative user with the following command after attaching to the app container:

./rvr user:add EMAIL PASSWORD admin

Development

Set environment variables

.env.example should be copied to .env into the repo root. Only the variables for external dependencies (API keys, map attribution, etc.) should be adapted. All other variables (for DB connection, static root, mailing, multiplayer, etc.) are fine with the default value. DEV=1 should be set for development!

Docker Compose

Execute the following command from the repo root:

docker compose up -d

And you are done! You can reach the application on http://localhost. The mails that are sent by the application can be found on http://localhost:8080. If needed, the database server can be directly reached on localhost:3306, or you can use Adminer web interface on http://localhost:9090

You might have to attach to the app container, e.g. for creating users, composer update, etc.


License: GNU AGPL 3.0. Full license text can be found in file LICENSE.