setting up your own digital-ocean cyber-dojo server

These instructions are obsolete.

The cyber-dojo server now runs inside a docker-container.
See the new instructions on how to run your own cyber-dojo server.








































Is a simple 6 step process:

1. start from the right image

From http://cloud.digitalocean.com
  • Image: One-click Apps: [Docker 1.9.1 on 14.04]
  • Size: choose $10/month or more


2. install the cyber-dojo github repo

This will take about a minute. As root (making sure you type cyber-hyphen-dojo and not cyberdojo in the git clone command)...
$ cd /var $ mkdir www $ cd www $ git clone https://github.com/JonJagger/cyber-dojo

3. install cyber-dojo as the default rails server and all the necessary gems

This will take 5+ minutes. As root...
$ cd /var/www/cyber-dojo/admin_scripts $ ./setup_digital_ocean_server.sh


4. install pre-built cyber-dojo-foundation docker-images

As root...
$ cd /var/www/cyber-dojo/languages $ ./docker_list_all_images.rb
will tell you the names of the docker-images held in the cyber-dojo-foundation docker hub
For example:
... cyberdojofoundation/clangpp_googletest == C++ (clang++), GoogleTest cyberdojofoundation/coffeescript_jasmine == CoffeeScript, jasmine cyberdojofoundation/csharp_nunit == C#, NUnit cyberdojofoundation/csharp_specflow == C#, SpecFlow cyberdojofoundation/d_unittest == D, unittest cyberdojofoundation/erlang_eunit == Erlang, eunit cyberdojofoundation/fortran_funit == Fortran, FUnit cyberdojofoundation/fsharp_nunit == F#, NUnit cyberdojofoundation/gcc_assert == C (gcc), assert ...


Now do a
$ docker pull <image>
for each image of your choice. For example,
$ docker pull cyberdojofoundation/clangpp_googletest


Alternatively, you can simply pull them all (typically takes 15+ minutes)
$ cd /var/www/cyber-dojo/languages $ ./docker_pull_all_images.rb


Note that whenever you pull new images you will need to repeat step 5.

5. refresh the caches

As root...
$ cd /var/www/cyber-dojo/caches $ ./refresh_all.sh


6. start your server

As root...
$ service apache2 restart