Dockerized libfprint

This is the dockerized version of the post libfprint, a microservice approach.

Inside the docker folder are the files:

To run the demo with docker-compose on your Raspberry pi:

  1. Install docker
$ curl -sSL https://get.docker.com | sh
  1. Add permission to the pi user
$ sudo usermod -aG docker pi
  1. Install docker compose
$ sudo apt-get install libffi-dev libssl-dev
$ sudo apt-get install -y python python-pip
$ sudo pip install docker-compose
  1. Create the folder where the MySQL container will store the database files:
$ mkdir -p /tmp/docker/volumes/mysql

If you want to use another directory, change the docker-compose.yml properly before runnin the docker-compose.

  1. Download raspi-libfprint on your Raspberry pi, then:
$ cd ./raspi-libfprint/docker
$ sudo docker-compose up -d

It will download all the necessary docker images and run the containers. The web interface will be available on your http://localhost so the port 80 must be available on your raspi, otherwise change the docker-compose.yml file properly before running docker-compose.

Be aware that the containers running libfprint need to access the /dev of the (Raspbery pi) host, so they can interact with the fingerprint readers. For that, the containers must run in “privileged” mode.

It has some serious security implications, so use it carefully. Further information you can find on the Docker Blog.

The project raspi-libfprint is available on github here.