Development with Docker

Not for production environments yet.


Requirements

Docker

Docker Compose

Rogo Docker

Running

See the readme file in the rogo docker repository for full details.


Quick start:

Start up the rogo docker containers

export ROGO_DOCKER_WWWROOT=<path to rogo directory on host machine>
export ROGO_DOCKER_MYSQLROOT=<mysql root password>
export ROGO_DOCKER_EXPOSE=1
bash rogo-compose.sh up -d

Get the IP Address of the web container as you will need it when specifcy the server host on rogo installation.

docker inspect rogo_web_1

Creating a settings.xml file in the config directory of $ROGO_DOCKER_WWWROOT and run the command line installer via docker-compose.

docker-compose exec -T web php cli/init.php -u root -p $ROGO_DOCKER_MYSQLROOT -s db -t 3306 -n rogo

Rogo requires a number of NPM and Composer packages. The easiest way to install these is to install the unit test and behat test suites as these will do the work for you.

If you do not want to do that just yet, you can install NPM and Composer packages manually:

Installing Composer

Download the latest Composer phar file from https://getcomposer.org/download/ to the Rogō root directory and running the following command:


php composer.phar install

Installing NPM

Rogo uses NPM version 6 (this will be automatically added if you are using Docker)

NPM itself is installed in the docker image. To install the packages run:

Base:


npm install 


Tinymce:


cd plugins/texteditor/plugin_tinymce_texteditor
npm install

TinyMCE plugins

If you want to use our ruby annotation and maths equation editor in develop please see install instructions at

https://bitbucket.org/uonadmin/ruby-annotation

https://bitbucket.org/uonadmin/maths-equation-editor

The desired location for tinymce plugins in Rogo is at plugins/texteditor/plugin_tinymce_texteditor/js/plugins