Как получить доступ к информации о задачах и узлах в контейнерной службе docker - PullRequest
0 голосов
/ 04 августа 2020

С помощью службы docker я могу получить следующие запущенные задачи и связанные узлы. Мне интересно, как каждая запущенная задача может получить свой идентификатор узла и имя задачи? Есть ли какая-либо переменная среды для доступа к ним? Если нет, то как я могу его установить?

$ docker service ps appservice

ID             NAME           IMAGE             NODE      DESIRED STATE  CURRENT STATE          ERROR  PORTS
0qihejybwf1x   appservice.1   appservice:3.0.5  manager1  Running        Running 8 seconds
bk658fpbex0d   appservice.2   appservice:3.0.5  worker2   Running        Running 9 seconds
5ls5s5fldaqg   appservice.3   appservice:3.0.5  worker1   Running        Running 9 seconds
8ryt076polmc   appservice.4   appservice:3.0.5  worker1   Running        Running 9 seconds
1x0v8yomsncd   appservice.5   appservice:3.0.5  manager1  Running        Running 8 seconds
71v7je3el7rr   appservice.6   appservice:3.0.5  worker2   Running        Running 9 seconds
4l3zm9b7tfr7   appservice.7   appservice:3.0.5  worker2   Running        Running 9 seconds
9tfpyixiy2i7   appservice.8   appservice:3.0.5  worker1   Running        Running 9 seconds
3w1wu13yupln   appservice.9   appservice:3.0.5  manager1  Running        Running 8 seconds
8eaxrb2fqpbn   appservice.10  appservice:3.0.5  manager1  Running        Running 8 seconds

1 Ответ

0 голосов
/ 04 августа 2020

Мне удалось добиться этого, установив переменные среды в файле docker -compose. Чтобы получить идентификатор задачи, я добавил следующую строку в конфигурацию службы:

environment:
        - MYTASKID={{.Task.ID}}
...