ngnrsaa / qflex

Flexible Quantum Circuit Simulator (qFlex) implements an efficient tensor network, CPU-based simulator of large quantum circuits.
Apache License 2.0
97 stars 25 forks source link

Rootless container #61

Closed s-mandra closed 5 years ago

s-mandra commented 5 years ago

HPC cluster like Pleiades@NASA don't have docker, but still allow to create user namespaces. I'm exploiting user namespaces to create rootless containers to run simulations/tests without the burden to install locally all the dependencies.

s-mandra commented 5 years ago

It is definitely reusable (Pleiades@NASA is just a user-case). I'll write some documentation later today or tomorrow.

s-mandra commented 5 years ago

I'm fixing a check that always trigger an error (even if it shouldn't). Fixing it right now.

s-mandra commented 5 years ago

Everything should work properly. You can try:

./create_container.sh -h

to see some help and:

./create_container.sh qflex

to create a container in the subfolder qflex (it should run automatically all the tests). Finally:

./run_container.sh qflex

to run /bin/sh inside the container.

s-mandra commented 5 years ago

@95-martin-orion, if everything looks good to you, I would like to merge this branch to master. Thanks!

95-martin-orion commented 5 years ago

When running in a remote client, I'm now getting a whole bunch of errors like this when running create_container: "ERROR: Failed to create usr/libexec/git-core/git-describe: Operation not permitted"

Additionally, tests do not run and I am unable to run the qflex.x binary from within the container.

(Everything still works fine in a local environment - maybe we should just focus on that use case?)