Мне нужно запустить контейнер («дочернее» изображение), который имеет доступ к графическому процессору для ускорения кодирования видео, но мне также нужно, чтобы он был организован Swarm.Файл compose (файл стека) ниже эффективно запускает дочернее изображение, но когда стек удаляется, дочерний контейнер остается бесхозным.Я стараюсь не запускать Docker-in-Docker для превосходного блога Жерома Петаццони .Существуют ли какие-либо дополнительные метки, которые я пропускаю, чтобы связать дочерний контейнер с родительским сервисом - что позволяет Swarm управлять дочерним контейнером через родительский сервис?
version: "3.7"
services:
parent-service:
image: docker:stable
entrypoint: [sh, -c]
environment:
TASK_NAME: '{{.Task.Name}}'
command: >-
'exec docker run
--interactive
--device=/dev/dri/renderD128:/dev/dri/renderD128
--label com.docker.stack.namespace=$$(docker container inspect --format "{{index .Config.Labels \"com.docker.stack.namespace\"}}" $${TASK_NAME})
--volumes-from=$${TASK_NAME}
--rm
child:latest'
volumes:
- type: bind
source: /var/run/docker.sock
target: /var/run/docker.sock