Playground Environment

We have provided an online playground with diverse environments for you to experiment with various concepts discussed throughout the book: practice SQL queries using a relational database, play around with MongoDB, a NoSQL database, or see how a graph database works using Cypher and Neo4j. A number of visualizations illustrate how search tree structures work.

There are two ways how you can use the online playground: either by creating an account on this site, or by downloading a standalone environment which you can host on your own system (as a Docker container). We recommend the latter option if you're planning to host your own environment for students to work with.

Access the Online Playground Environment

Click here to access the online environment.

Note that you will need to register an account to access and use the online environment.

Hosting the Playground Environment Yourself

A Dockerfile repository is hosted at this GitHub repository from which you can set up your own Docker containing containing the full playground environment. Docker is available both for Linux, Mac, and Windows operating systems.

Installation on Non-Hyper-V Windows Systems

Docker for Windows requires Microsoft Windows 10 Professional or Enterprise 64-bit (i.e. a Windows edition supporting Hyper-V). If you're running another Windows version, you'll have to use the Docker Toolbox and VirtualBox. To install, first download and install Docker Toolbox. Next, open a PowerShell command line instance and enter the following:
docker-machine create virtualbox

Once booted, run the following command:
docker-machine env virtualbox | Invoke-Expression

Stop the virtual machine:
docker-machine stop virtualbox

Next, open VirtualBox. A machine called "virtualbox" should be present. Open its settings and head to the Networking tab. Open the "Advanced" settings under "Adapter 1", and open the "Port Forwarding" window. Add a new port forwarding rule as follows:

  • Name: web
  • Protocol: TCP
  • Host IP: (leave blank)
  • Host port: 8081
  • Guest IP: (leave blank)
  • Guest port: 8081
Start the virtual machine again:
docker-machine start virtualbox

Download a ZIP file of the GitHub repository for the playground. Extract it somewhere easy to find (e.g. "pdbmbook-docker-master" on your Desktop).

In your PowerShell window, navigate to the "pdbmbook-docker-master" directory using the "cd" command, and enter:
docker build .

Docker will now start preparing your image. This might take a few minutes depending on your Internet connection. Once done, verify the image is up by entering:
docker images

This will show something like:

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
none                none                258b38268c91        41 seconds ago      1.44GB
ubuntu              xenial              0b1edfbffd27        11 days ago         113MB

Run the image using the following command (make sure to replace "258b38268c91" with your correct image ID):
docker run -i -t -p 8081:80 258b38268c91

Once done booting, you can navigate to 127.0.0.1:8081 in your web browser to use the playground environment.


© Principles of Database Management 2018.
Send us your feedback.