Skip to main content

nvdocker is library built on top of the docker-py python sdk to build and run docker containers using nvidia-docker. Targets nvidia-docker2

Project description

nvdocker
========

nvdocker is library built on top of the docker-py python sdk to build
and run docker containers using nvidia-docker.

Targets nvidia-docker2

Installation
------------

- Install nvidia-docker

https://github.com/NVIDIA/nvidia-docker#quickstart

- Install nvdocker

::

pip install nvdocker

Usage
-----

These variables are already set in NVIDIA's `official CUDA
images <https://hub.docker.com/r/nvidia/cuda/>`__.

``visible_devices``
~~~~~~~~~~~~~~~~~~~

This variable controls which GPUs will be made accessible inside the
container.

- Possible values:

- ``0,1,2``, ``GPU-fef8089b`` …: a comma-separated list of GPU
UUID(s) or index(es),
- ``all``: all GPUs will be accessible, this is the default value in
our container images,
- ``none``: no GPU will be accessible, but driver capabilities will
be enabled.
- ``void`` or *empty* or *unset*: ``nvidia-container-runtime`` will
have the same behavior as ``runc``.

``driver_capabilites``
~~~~~~~~~~~~~~~~~~~~~~

This option controls which driver libraries/binaries will be mounted
inside the container.

- Possible values

- ``compute,video,graphics,utility`` …: a comma-separated list of
driver features the container needs,
- ``all``: enable all available driver capabilities.
- *empty* or *unset*: use default driver capability: ``utility``.

- Supported driver capabilities

- ``compute``: required for CUDA and OpenCL applications,
- ``compat32``: required for running 32-bit applications,
- ``graphics``: required for running OpenGL and Vulkan applications,
- ``utility``: required for using ``nvidia-smi`` and NVML,
- ``video``: required for using the Video Codec SDK.

``require`
~~~~~~~~~~~~~

A logical expression to define constraints on the configurations
supported by the container.

- Supported constraints

- ``cuda``: constraint on the CUDA driver version,
- ``driver``: constraint on the driver version,
- ``arch``: constraint on the compute architectures of the selected
GPUs.

Expressions
^^^^^^^^^^^

| Multiple constraints can be expressed in a single environment
variable: space-separated constraints are ORed, comma-separated
constraints are ANDed.
| Multiple environment variables of the form ``rew`` are ANDed together.


``cuda``
^^^^^^^^^^^^^^^^^^^^^^^

The version of the CUDA toolkit used by the container. If the version of the NVIDIA driver is insufficient to run this
version of CUDA, the container will not be started.

Possible values
'''''''''''''''

- ``cuda>=7.5``, ``cuda>=8.0``, ``cuda>=9.0`` …: any valid CUDA version
in the form ``major.minor``.


``cuda_vesion``
~~~~~~~~~~~~~~~~

| Similar to ``NVIDIA_REQUIRE_CUDA``, for legacy CUDA images.
| In addition, if ``NVIDIA_REQUIRE_CUDA`` is not set,
``NVIDIA_VISIBLE_DEVICES`` and ``NVIDIA_DRIVER_CAPABILITIES`` will
default to ``all``.

``disable_require`
^^^^^^^^^^^^^^^^^^^^^^^^^^

Single switch to disable all the constraints of the form

Copyright and License
---------------------

This project is released under the `UIUC/NCSA
License <https://github.com/acm-uiuc/nvdocker/blob/masterLICENSE>`__.
``docker-py`` is licensed under the `Apache License
2.0 <https://github.com/docker/docker-py/blob/master/LICENSE>`__.
nvidia-docker and nvidia-container-runtime are licensed under the `BSD
3-clause
license <https://github.com/NVIDIA/nvidia-container-runtime/blob/master/LICENSE>`__.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nvdocker-0.0.2a2.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

nvdocker-0.0.2a2-py2.py3-none-any.whl (6.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file nvdocker-0.0.2a2.tar.gz.

File metadata

  • Download URL: nvdocker-0.0.2a2.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for nvdocker-0.0.2a2.tar.gz
Algorithm Hash digest
SHA256 c84873f5f9638b44101a4204a9f4f84728d1bf9bf43b3341398d8648f7737cd6
MD5 0289bb7c48be3d013a483b2085707c52
BLAKE2b-256 ca39f18b4d03336009e180fef8288dde4f626c5faec5ac35f46ae967097237c5

See more details on using hashes here.

File details

Details for the file nvdocker-0.0.2a2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for nvdocker-0.0.2a2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f71e2ea9d35d891ecc772209f41fb557c04b2b82630cad2963d6a00f2ff66261
MD5 13c6561774d01a19bcd19ce0a3aa9cce
BLAKE2b-256 8a9d361ac3e7b5778009d5d5c5876694a6eacee9a11b55a69eedc692074bfd62

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page