Не думаю, что это проблема задачи docker. Сезон, в котором она работала для задачи командной строки, вероятно, объясняется тем, что при запуске команды сборки docker на локальном компьютере или в задаче командной строки сначала командная строка оценивает, что заключено в "$()
", а затем значение прошло до docker ARG
. Но для задачи сборки docker она непосредственно вызывает docker .exe, поэтому выражение в «$()
» не может быть оценено.
Поскольку вы нашли обходной путь для использования задачи командной строки. Я предлагаю вам использовать задачу командной строки вместо docker task.
Я также попробовал то, что предложил @ 4c74356b41. Я определил конвейерную переменную key
и поместил значение ключа в эту переменную и сослался на эту переменную в docker задаче сборки.
И я работал со мной ниже, когда поставил --buld-arg PRIVATE_KEY="$(key)"
в поле Аргументы .
Переменная 
Docker задача построения
