Dockerfile COPY {источник: -...}

Когда вы создаете проект в Visual Studio 2017 с поддержкой Docker, Dockerfile имеет следующую строку:

COPY ${source:-obj/Docker/publish} .

Что это значит? Где указывает макрос источника? В чем смысл штриха?

Ответы

Ответ 1

Это называется заменой переменных.

На английском языке это переводится следующим образом:
"Привет, Докер, когда вы построите это, COPY путь, который вы найдете в переменной $source, к текущему каталогу на изображении (.). Если $source пусто или отсутствует, просто используйте путь по умолчанию obj/Docker/publish"

$source - это переменная среды, которая определена перед выполнением docker build.

Некоторые ссылки:

Ответ 2

Если вы собираете образ Docker, используя тот же Dockerfile, но из командной строки Windows. Как будет выглядеть исправленный (исправленный) Dockerfile.

Вот Dockerfile, созданный Visual Studio:


ОТ microsoft/aspnet: 4.7.2-windowsservercore-1803 ARG источник WORKDIR/inetpub/wwwroot

COPY $ {источник: -obj/Docker/publish}.