You can follow the SimulaQron documentation for getting started to install and verify your system. Once you have verified the installation you are very welcome to play around with configuring and setting up your own local simulated network. You can also go through the provided examples in Python to get a feel for the flow of a program built on the simulated network.
We strongly encourage you to install SimulaQron via this method as it provides a working SimulaQron regardless of the current packages you have installed. This method uses Docker which is OS-level virtualization to deliver software in packages called containers, which are isolated. This avoids conflicts between SimulaQron and the several versions of Python you may have on your computer. It also allows to start with a clean “virtual” machine.
First step: getting docker
You need to install docker on your computer. For Debian machines, install docker via the following.
sudo apt install docker.io
Second step: build (this step has to be done only once)
Once you have docker, create a folder where you will build the “virtual” machine. Extract the following files and copy them in the folder.
This files contains the following lines (and the configuration file for the network):
# Commands to be run where this file sits FROM python:3.7 WORKDIR /usr/src/app RUN pip install --no-cache-dir simulaqron # RUN pip install projectq # RUN simulaqron set backend projectq COPY paris_network.json /usr/local/lib/python3.7/site-packages/simulaqron/config/network.json CMD /bin/bash
To be given permission in the Docker folder, run:
sudo usermod -a -G docker $USER
Now let’s build it. In the folder, launch a terminal and run:
docker build -t sq-img .
Note: you will see an error when projectq is being installed. You can ignore it.
Third step: run the container (every time you want to run it)
In the folder, launch a terminal and run:
docker run -ti --rm --name sq-app -v "$PWD":/usr/src/app -p 8010-8079 sq-img
Now to start SimulaQron, you just have to run:
and then enter yes when asking to add/replace the network ‘default’.
To stop simulaqron:
Note: you can work in your usual, favourite environment to create and edit python codes. Whenever you want to run the program which uses SimulaQron, just copy the file into the folder which contains the Dockerfile and it will directly appear in the ‘virtual’ machine. You can then run it through Docker.