Installation

Requirements

If you’re not using the Docker image, you will need to make sure that the following are installed on your machine:

  • Web server (e.g. Apache or Nginx)
  • PHP, version 7.1 or above
  • Database (either MySQL or MariaDB)
  • Node.js and npm

Steps

  • Clone repository and install dependencies
    git clone https://github.com/JanoCodes/Ticketing.git
    cd Ticketing
    composer install –no-dev
    npm install
  • Stylesheet can be customised by editing resources/assets/sass/_variables.scss
  • Complie stylesheet and scripts
    npm run production
  • Edit the configuration file at .env and storage/settings.hjson
  • Generate the public and private keys for OAuth authentication
    openssl genpkey -algorithm RSA -out storage/oauth-private.key -pkeyopt rsa_keygen_bits:2048
    openssl rsa -in storage/oauth-private.key -outform PEM -pubout -out storage/oauth-public.key
  • Create tables required by the application
    php jano migrate
  • Point web server to public directory and you’re done!

If you do not want to have to worry about the dependencies, you can also use the Docker image janorocks/ticketing.