docker-撰写 v3.7。如何授予访问 GPU 服务的权限
docker-compose v3.7. How to give access to GPU for service
我有 docker-compose.yml
个包含我的应用程序配置的文件。
其中一项服务需要访问 GPU。
我单独构建了容器并使用命令 docker run -it --gpus=all <my_image> /bin/bash
非常简单地开始了一切。
但我需要使用 docker-compose 通过 GPU 访问启动此服务。
我的版本 docker-compose.yml
- 3.7
如果我使用官方文档中的代码示例,则它们不起作用,例如这些:
services:
test:
image: tensorflow/tensorflow:latest-gpu
command: python -c "import tensorflow as tf;tf.test.gpu_device_name()"
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
docker-compose 在关键字 reservations
上抛出错误
请告诉我如何使用 docker-compose.yml
版本 3.7
为我的服务授予 GPU 访问权限
检查你的 docker-compose >= 1.28
版本,我遇到了类似的问题,更新后解决了。
Docker Compose v1.28.0+ allows to define GPU reservations
您可以查看 documentation 了解如何安装 docker-compose。然而,这对我有用:
检查您的版本(以确保这是问题所在)
$ docker-compose --version
docker-compose version 1.25.0, build unknown
版本应至少为 1.28。然后你可以通过运行以下命令安装最新的:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
启动一个新终端并再次检查版本:
$ docker-compose --version
docker-compose version 1.29.2, build 5becea4c
我有 docker-compose.yml
个包含我的应用程序配置的文件。
其中一项服务需要访问 GPU。
我单独构建了容器并使用命令 docker run -it --gpus=all <my_image> /bin/bash
非常简单地开始了一切。
但我需要使用 docker-compose 通过 GPU 访问启动此服务。
我的版本 docker-compose.yml
- 3.7
如果我使用官方文档中的代码示例,则它们不起作用,例如这些:
services:
test:
image: tensorflow/tensorflow:latest-gpu
command: python -c "import tensorflow as tf;tf.test.gpu_device_name()"
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
docker-compose 在关键字 reservations
请告诉我如何使用 docker-compose.yml
版本 3.7
检查你的 docker-compose >= 1.28
版本,我遇到了类似的问题,更新后解决了。
Docker Compose v1.28.0+ allows to define GPU reservations
您可以查看 documentation 了解如何安装 docker-compose。然而,这对我有用:
检查您的版本(以确保这是问题所在)
$ docker-compose --version
docker-compose version 1.25.0, build unknown
版本应至少为 1.28。然后你可以通过运行以下命令安装最新的:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
启动一个新终端并再次检查版本:
$ docker-compose --version
docker-compose version 1.29.2, build 5becea4c