mickahell / qat-computer

Qiskit base docker image
https://mickahell.github.io/qat-computer/
Apache License 2.0
0 stars 0 forks source link
container docker go golang python qiskit quantum quantum-computing

Qat Computer

GitHub release (latest by date)

Python tests QatComputer tests QatCMD tests

Docker Pulls Docker Pulls Full

Qiskit License

The project is aimed to create a Qiskit base docker image to use as base for any quantum application using Qiskit. The image also contains the tool QatComputer who allows you to run a python project directly inside the container as a run as you go.

Full documentation available at QatComputer docs.

Goals

This project has 2 purposes :

Prerequisites

Details

Getting started

The image is available in DockerHub and can be clone with :

docker clone ...

Most of the usefull commands are available in the Docker Compose file and in the makefile.

Build

if you want to build your own image :

docker build . --build-arg FULL=False --file docker/Dockerfile --tag qatcomputer:latest

Pull

The image is available in the DockerHub :

docker pull mickahell/qatcomputer

Compute

Parameters for the tool can be given as docker extra parameters. A configuration file is also available with every parameters :

# log
## 0 : Informational
## 1 : Warning
## 2 : Error --> Always
## 3 : Critical --> Always
loglevel: 0   # Optionnal
debian_packages:   # Optionnal
  - "jq"
python_version: "python3.10"   # Optionnal
compute_path: "simple_python_repository"
filename_to_execute: "main.py"
requirements_file: "requirements.txt"   # Optionnal

In order to start the image and make the internal tool available :

docker run -d --rm --privileged --cgroupns=host \
    --name qatcomputer \
    -v /sys/fs/cgroup:/sys/fs/cgroup:rw \
    -v my_conf_folder:/etc/qat-computer/conf \
    -v my_super_project:/etc/qat-computer/compute \
    mickahell/qatcomputer:latest

In order to the tool works correctly you need :

And run the tool :

docker exec --tty qatcomputer \
    qat-computer compute -conf=conf.yaml