InstallationΒΆ
System Requirements
- 64-bit Architecture
- A minimum of 250GB storage and 4GB memory
- Developed and tested on Fedora 27
Prerequisites
- All system should have Libvirt API installed for virtual machine provisioning.
# dnf install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install -y
- All compute resources should have Docker installed for running Docker containers. To install Docker on Fedora follow
- Server should have Docker machine installed.
# curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine && sudo install /tmp/docker-machine /usr/local/bin/docker-machine
- Server should have SSH public key or it can be generated using SSH keygen.
# ssh-keygen -t rsa -f /root/.ssh/id_rsa -q -P ""
Installation
From Docker
To containerize Minisat, first clone the Github Minisat repository using and go to directory Minisat
# git clone https://github.com/miniSat/minisat.git
# cd Minisat
Build docker image using
# docker build -t minisat:latest .
After building the image now run the image using
# docker container run -it -p 8000:8000 minisat:latest 0.0.0.0:8000
Head to http://localhost:8000 for Minisat
From Source code
Minisat uses Django web framework which can be installed in Python 3 virtual environment. To create Python 3 virtual environment
# python3 -m venv <environment_name>
After that we need to activate the virtual environment by executing
# source <environment_name>/bin/activate
Now clone the Github Minisat repository from
# git clone https://github.com/miniSat/minisat.git
Minisat requires some Python modules like Django (version 2.0). We can install them by executing
# pip install -r requirements.txt
Django ORM is used to create database.
# python manage.py makemigrations
Above command will create a Python script which will contain all SQL queries that we need to create the schema of database. The migration files are stored at .../satellite/migrations/
.
# python manage.py migrate
It will create a database and execute the SQL queries in Python script. Minisat, uses SQLite database to store values.
Now our environment is ready to run Minisat server. To start server
# python manage.py runserver
By default, Django server is running at http://localhost:8000.
If you encounter below error
# Error: That port is already in use.
Try changing the port number while running the server
# python manage.py runserver <port_number>