Skip to content

Get Started English

Andreas edited this page Jan 20, 2021 · 20 revisions

1. Download or Git Clone

Download the documents as a .ZIP archive to your local PC or directly to the server via SSH using Git Clone.

Unzip the ZIP archive to the desired location and continue the installation via the server (SSH) console.

All SRC and template files are included in this archive. The database must be created and set up separately later.

2. create database

Create an empty mySQL database. The mySQL user must have all rights for this database. The mySQL user must be entered in the .env.local.

3. Create .env.local

Create an empty .env.local file in the root directory of Jitsi Admin and copy the text with your customizations into it.

A keycloak server must be entered in the ENV. For this, a new client must also be created on the Keycloak.

For example the .env.local from the Master Branch

3.1 Apache configuration

For the Apache server a VirtualHost Config is still needed.

Symfony needs the **FollowSymLinks **option and mod_rewrite enabled. Basically, SSL encryption is also recommended.

Apache2 VirtualHost Config

4. install vendor files with composer

In the next step you have to install all vendor files using composer

To do this, run the command in the SSH console.

php composer.phar install

5. initiate database

Create the database schema via the SSH console using one of the following commands.

To do this, run the command in the SSH console on the server. If the mySQL data is correctly created in the .env.local the database schema will be created.

php bin/console doctrine:schema:create
php bin/console doctrine:schema:update --force

6. NPM install and NPM run build

All static JavaScript documents are downloaded afterwards and processed with WebPack. NodeJS is therefore required on the server to build the CSS and JS data. The first run of npm install can take a long time and load the server to 100%.

npm install
npm run build

7. start setup pipeline

After the setup is complete, run the pipeline to create missing folders and adjust permissions. It is important that the cache and log folders have the correct permissions of the Apache user, because Symfony has to write to these folders.

bash BranchPipeline.sh

8. server hardening

It is up to the operator's discretion to protect the server against hacking.

Use server to run in a private cloud and keep the attack vectors as low as possible. Deploy server firewall and nginx load ballancer for better availability. Install auditd on the servers to keep track of possible configuration changes. Use Fail2Ban for more controlled SSH access on the servers Configure ssh key based SSH access.