Thank you for downloading Dokeos, the open source Learning Management System for professionals.
- Quick preview of Dokeos features
- test Dokeos on Free Campus
This guide explains how to install Dokeos Learning Management System (LMS). It explains how to install Dokeos Oogie PowerPoint conversion and Dokeos Videoconferencing although these packages are not required to use Dokeos LMS. Please read this fully before proceeding with the installation.
If you want to save time, trouble and money, you can alternatively have your Dokeos portal hosted by Dokeos or one of its partners.Contents
- Pre-requisites
- Installation of Dokeos LMS
- Upgrade from a previous version of Dokeos
- Troubleshooting
- Administration section
- LDAP
- Oogie PowerPoint / Impress conversion
- Videoconferencing and audio-recorder
1. Pre-requisites
Dokeos can be installed on Windows, Linux, Mac OS X and UNIX servers indifferently. However, we recommend the use of Linux server for optimal flexibility, remote control and scalability.Dokeos is mainly a LMS running Apache, MySQL and PHP (the so called AMP trilogy).
It can be enriched with PowerPoint conversion (feature called Dokeos Oogie) using OpenOffice + Java. You may also want to add the Dokeos Videoconferencing plugin using the RED5 Open Source Flash server.
All these software are open source and freely available.
To run Dokeos LMS on your server, you need to install WAMP, LAMP or MAMP:
- To install WAMP (AMP on Windows), we recommend the XAMPP .exe installer
- To install LAMP (AMP on Linux), use the Package manager of your favourite distribution (Synaptic, RPMFinder etc.). For instance, on a Ubuntu server, use Shell or Synaptic following the Ubuntuguide on Apache and the following sections
- To install MAMP (AMP on Mac OS X), refer to the MAMP dedicated website
MySQL database server
You will need a login and password allowing to administrate and create at least one database. By default, Dokeos will create a new database for each course created. It means your host should allow you to create and administrate several databases. You can also install Dokeos using only one database, in that case you have to select this option during the installation.To take advantage of Oogie PowerPoint / Impress conversion, you need :
To take advantage of Dokeos Videoconferencing, you need :
2. Installation of Dokeos LMS
- Download Dokeos LMS
- Unzip it
- Copy the dokeos directory in your Apache web directory. This can be C:\xampp\htdocs\ on a Windows server or /var/www/html/ on a Linux server
- Open your web browser (Internet Explorer, Firefox...) and type http://localhost/dokeos/ if you install locally or http://www.mydomain.com/dokeos/ if you install remotely
- Follow the web installation process. You can accept all default values. Consider changing the admin password to remember it.
The following directories need to be readable, writeable and executable for everyone:
- dokeos/claroline/inc/conf/
- dokeos/claroline/garbage/
- dokeos/claroline/upload/
- dokeos/archive/
- dokeos/courses/
- dokeos/home/
On Linux, Mac OS X and BSD operating systems you can use the CHMOD 777 command for this. In Windows, you may need to check the properties of the folders (by right-clicking on them).
2.5. The following files need to be readable and writeable for everyone:
- dokeos/claroline/inc/conf/claro_main.conf.php (if present)
- dokeos/home/*.html
On Linux, Mac OS X and BSD operating systems you can use the CHMOD 666 command for this. In Windows, you may need to check the properties of the files and folders (by right-clicking on them).
NOTES:
Do not modify the home_*.html files directly. Instead,
choose "Configure the homepage" in the Dokeos administration section.
Windows : with combination packages like XAMPP, out of the box, login and password for MySQL should probably remain empty.
Configuration and security after installation
- Protect your configuration file: make sure no one can overwrite it. You can find the config file in (dokeos folder)/claroline/inc/conf/claro_main.conf.php. Make it read-only (windows/xwindows: right-click the file to edit the properties. linux/bsd/macosx: use the chmod 444 command). The config file is created by Apache so you may need to be root user to change its permissions.
- Protect your installation folder: if the (dokeos folder)/claroline/install folder is still accessible, someone could install over your existing version (you could lose your data that way). Move the folder somewhere out of the web directories so it is not accessible, change its name, or edit its properties so no one can read or execute it.
- For better security: making the files world-writable will help you install, and solves many issues for people without much admin experience. However, it's better security to make the owner of the apache process (often called apache or www-data) also owner of all the dokeos files and folders. Ths way, these files need only be readable and writable by the Apache process owner, not by the entire world.
- Configure your Dokeos installation: in the administration section of Dokeos, you can use the Dokeos Config Settings to adjust the behavior of your installation.
- Configure Dokeos mail: most of Dokeos uses the mail settings from the php.ini file. However, the announcements tool uses phpMailer (another free software project) and the settings for this tool can be adjusted in (dokeos folder)/claroline/inc/conf/mail.conf.php.
PHP configuration
To get the best of Dokeos, you need to finetune PHP settings. Consider :- Editing php.ini file (on windows can be located at C:\xampp\php\php.ini, on Ubuntu Linux : /etc/php5/apache2/php.ini
- search the word "max" and increase values to optimise the server
- you may want to end up with the following values :
max_execution_time = 300 ; Maximum execution time of each script, in seconds max_input_time = 600 ; Maximum amount of time each script may spend parsing request data memory_limit = 256M ; Maximum amount of memory a script may consume (128MB) post_max_size = 64M upload_max_filesize = 100M |
Some users could meet problems if their PHP setting doesn't fit these ones:
- short_open_tag = On
- safe_mode = Off
- magic_quotes_gpc = On
- magic_quotes_runtime = Off
Past Dokeos versions required register_globals to be set to On. This is no longer necessary, this can be set to Off and Dokeos will work fine.
BSD users: these php libraries have to be included during php installation:
- php-mysql The mysql shared extension for php
- php-pcre The pcre shared extension for php
- php-session The session shared extension for php
- php-zlib The zlib shared extension for php
- (optional) php-ldap if you want to be able to use LDAP authentication
3. Upgrade from a previous version of Dokeos
Before upgrading we heavily recommend you do a full backup of the previous Dokeos directories and databases. If you are unsure how to achieve this please ask your hosting provider for advice.
3.1 Upgrading from Dokeos 1.8.x
If you upgrade from Dokeos 1.8.x :- check that you haven't left any customised stylesheet or image*
- download the Dokeos 1.8.4 install package from the Dokeos download page
- unzip the new files of Dokeos 1.8.4 over the files of the older version
- point your browser on your portal URL + main/install/
- choose your language and click Upgrade from 1.8.x
* Styles and images are located in the main/css or main/img directories. You can still recover them from your backup if you have made it. Any modified style or image that uses the default style/image name will be overwritten by the next step. To avoid loosing your customisations, always ensure you copy the styles/images under a new name and use and modify the copy, not the original. The original will always be overwritten by newer versions.
3.2 Upgrading from Dokeos 1.6.x
If you upgrade from a lower version of Dokeos (1.6.x), the first and most important thing to do is to *move* your current directory to another place.An easy way to do that is to create a subdirectory called "old_version" in your current Dokeos directory and move everything in there using a simple "move" command (i.e. under Linux: mkdir old_version; mv * old_verion/), then make the old_version/ directory writeable by the web server so that courses/ and upload/ directories can be moved from the old to the new installation.
The complete process is as follow:
- move the current Dokeos directory contents to a subdirectory called old_version and make it writeable by the web server. This is important to allow the move of the courses/ and upload/ directories to the new install
- download the Dokeos 1.8.4 install package from the Dokeos download page
- unzip the new files of Dokeos 1.8.4 in the main Dokeos directory. The new directory main should be located directly inside your Dokeos root folder
- point your browser on your portal URL
- choose your language and click Upgrade from 1.6.x and confirm the current directory of the old version
NOTE: The upgrade from 1.6.x to 1.8.x implies a revision of the customised graphics and styles. The new version uses a complete new set of icons and styles, which means the ones from version 1.6 cannot be simply reused. The good news is the version 1.8.x allows you to create your own style in a separate css folder, that you can then reuse through all the 1.8.x versions
WARNING:
Do not delete the previous Dokeos installation directory before installing
the new one. When the update is successfully finished, you can remove
the old path.
NOTE:
Do not modify the home_*.html files directly. Instead,
choose "Configure the homepage" in the Dokeos administration section.
3.3 In both cases
The following directories need to be readable, writeable and executable for the web server:- dokeos/main/inc/conf/
- dokeos/main/garbage/
- dokeos/main/upload/
- dokeos/main/default_course_document/
- dokeos/archive/
- dokeos/courses/
- dokeos/home/
3.4 Quick-upgrade from 1.6.x guide for Linux
The following quick-upgrade guide assumes that:- the Dokeos database username (for MySQL) is "dokeos_db_user" and your login is "dokeos_user"
- the Dokeos installation is currently in /var/www/dokeos/ and it has 777 permissions
- your portal's URL is http://www.portalurl.com/
On the command-line, type:
- cd /tmp
- mysqldump -u dokeos_db_user -p --all-databases --result-file=/home/dokeos_user/dokeos_old.sql
- cp -ra /var/www/dokeos /home/dokeos_user/backup_dokeos
- mkdir /var/www/dokeos/old_version
- mv /var/www/dokeos/* /var/www/dokeos/old_version/
- chmod -R 0777 /var/www/dokeos/old_version/
- wget http://www.dokeos.com/download/dokeos-1.8.4.zip
- unzip dokeos-1.8.4.zip
- cp -r dokeos/* /var/www/dokeos/
- sudo chmod -R 0777 /var/www/dokeos/
- rm dokeos-1.8.4.zip
- rm -r dokeos/
Then:
- Direct your browser to http://www.portalurl.com/main/install/
- Proceed with the installation
- Review the directories permissions
4. Troubleshooting
If you have problems, go to the Dokeos website and ask a question on the support forum. Please read the previous messages first to see if there is already an answer to your question. We also maintain a list of Frequently Asked Questions.
5. Administration section
To access the Dokeos administration section, open browser, go to your Dokeos adress and log in with the admin user. Then you will see a "Platform admin section" link in the header of the web page. There you can manage users, courses, sessions, portal look and feel, homepage content, course categories etc.
6. LDAP
This part is optional, only organisations with an LDAP server will need to read this.
An LDAP module is already provided in Dokeos, but it has to be configured to make it work.
Compiling
Linux servers: It's possible that you have to recompile php with ldap support. Newer distributions also allow downloading rpms for additional packages.
Activating LDAP in Dokeos
In (dokeos folder)/claroline/inc/conf/claro_main.conf.php, around line 90, you see
//for new login module
//uncomment these to activate ldap
//$extAuthSource['ldap']['login'] = "./claroline/auth/ldap/login.php";
//$extAuthSource['ldap']['newUser'] = "./claroline/auth/ldap/newUser.php";
remove the // from the last two lines to activate LDAP.
Settings
Ask the LDAP server admin for the settings:
- ldap server name
- ldap server port (usually 389)
- ldap dc
//parameters for LDAP module
$usesLDAP = TRUE;
$usesCurriculum = FALSE;
$ldaphost = "myldapserver.com"; // your ldap server
$ldapport = 389; // your ldap server's port number
$ldapDc = "dc=xx, dc=yy, dc=zz"; //domain
Teacher/student status
If you wish, you can give teacher/student status to dokeos users according to settings in the ldap server. This is not a standard field however, so you'll have to change some code. claroline/auth/ldap/ldap_var.inc.php around line 189, function putUserInfoInClaroline ($login, $infoArray)
if (your criterium)
{
$statut = STUDENT;
}
else
{
$statut = COURSEMANAGER;
}
If this seems too difficult, the simplest solution is to just put $statut = STUDENT; and give course manager rights through the administration section.
Protected LDAP servers
Some LDAP servers do not support anonymous use of the directory services In this case, you need code that binds with a name and password - this code has already been provided, just ask on a forum or email for this.
7. Oogie PowerPoint / Impress conversion
Oogie converts your presentations coming from Ms-Office and OpenOffice into SCORM standardized e-courses or learning paths. This feature needs OpenOffice to convert the slides and RED5 (optional) to record your voice on top of the slides through a Flash based audio-recorder.7.1. PowerPoint / Impress conversion
- Install OpenOffice
- Edit the OpenOffice Setup.xcu file
On some Windows computers, located : C:\Program Files\OpenOffice.org 2.2\share\registry\data\org\openoffice\Setup.xcu On some Linux computers, located : /usr/lib/openoffice/share/registry/data/org/openoffice/Setup.xcu |
And add the following code
<prop oor:name="ooSetupConnectionURL"> <value> socket,host=localhost,port=2002;urp;StarOffice.ServiceManager </value> </prop> |
... just below these lines
<prop oor:name="ooSetupInstCompleted"> <value>false</value> </prop> |
Host : localhost Path to LZX Files: /main/webrooms/recorder.swf Leave the other fields empty Leave the default width and height of the converted slides unchanged (as long as your clients use most often a 1024x768 standard definition screen) |
- Start OpenOffice. Conversion will work only if this software is up and running. Check the MakeOOOListening wiki page to start OpenOffice as a service.
- Test the conversion : create a course > enter the course > Learning Path > PowerPoint conversion. If the slides are converted, then OpenOffice is listening to Dokeos.
NOTE : On Linux servers, you may want to do a $ sudo apt-get install msttcorefonts so as to install Microsoft fonts. This will give PowerPoint conversion a better rendering.
7.2. Audio-recorder
See below : Videoconferencing8. Videoconferencing and audio-recorder
We will now install and configure RED5 Open Source Flash server � the Dokeos RED5 webapplication. These will provide both- Videoconferencing and
- Audio recorder for Oogie
- add tests, pages and activities between the slides, thanks to the Learning Path builder
- get SCORM reporting thanks to the Learning path tool
- add audio on top of the slides thanks to the online audio recorder
You may want to take advantage of the audio recorder. For this :
- Download and install RED5 Open Source Flash server (you will find Linux packages and a Windows installer on the RED 5 website)
- Download Dokeos RED5 webapplication
- Unzip it and copy it into the webapps directory of your RED5 installation. Windows : you can use 7-ZIP to untar. Target directory can be C:/Program Files/Red5/webapps/ . Linux with Nautilus or through a shell : cp dokeos-red5APP-1.8/* /usr/lib/red5/webapps
- Edit the RED5 settings to fit with your firewall requirements in terms of open ports if there is a limitation.
- Configure Red5.
- Edit /usr/lib/red5/conf/red5.properties
- Edit /usr/lib/red5/conf/realm.properties and change the default administrator password.
More informations on RED5
Please take a look on this page : http://www.dokeos.com/wiki/index.php/Installing_videoconferenceConfiguration of your dokeos Videoconference plugin
The configuration of the VideoServing is done via the admin pages of Dokeos configuration in Dokeos platform admin, Configure the services, Configure Visio-conferenceThis contains the URL to the video conferencing application. You probably need to add something before these paths if Dokeos is not installed into the root of your webserver.
url:/main/webrooms/videoconference.html and
/main/webrooms/videoconference2.html
Connect your Dokeos installation to RED5
You should tell Dokeos the configuration of you red5 server. This is done using the administration page of Dokeos. In the first field below the two url, set the public ip of your red5 server. The second fieldwill contain the value of � rtmp.port � from you red5 configuration and the last field will contains � rtmpt.port � value.
Contact address: Dokeos, 44 rue des palais, B-1030 Brussels, Belgium
Mail: info@dokeos.com
Tel. +32 (0)2 211 34 56