Определение сборки VSTS - Создание образа Docker из приложения Java - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть приложение Java в VSTS, для которого было создано определение сборки, чтобы сгенерировать ряд артефактов сборки, которые включают файл ear и файл конфигурации сервера. Все эти артефакты сборки заархивированы в финальной задаче определения сборки.

Теперь мы хотим создать файл Docker, который инкапсулирует вышеперечисленные артефакты сборки в другую задачу сборки VSTS Docker. Это будет сделано с помощью задачи командной строки определения сборки, и стоит отметить, что наш целевой реестр докеров - это корпоративный реестр, а не Azure.

Проблема, с которой я сейчас сталкиваюсь, заключается в том, как сгенерировать требуемое изображение докера из заархивированного артефакта (или его содержимого, если это возможно). Любые идеи о том, как этого можно достичь?

1 Ответ

0 голосов
/ 17 сентября 2018

Для создания образа Docker из файла zip / tar вы можете использовать команду docker load:

docker load < test.tar.gz

Loaded image: test:latest
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
test                latest              769b9341d937        7 weeks ago         2.489 MB

После этого вы можете отправить изображение в личный реестр:

    docker login <REGISTRY_HOST>:<REGISTRY_PORT>
    docker tag <IMAGE_ID> <REGISTRY_HOST>:<REGISTRY_PORT>/<APPNAME>:<APPVERSION>
    docker push <REGISTRY_HOST>:<REGISTRY_PORT>/<APPNAME>:<APPVERSION>

Example :

    docker login repo.company.com:3456
    docker tag 769b9341d937 repo.company.com:3456/test:0.1
    docker push repo.company.com:3456/test:0.1

Таким образом, в конце конвейера сборки добавьте задачу командной строки и выполните указанные выше команды (измените значения на местоположение вашего zip-файла, имя пользователя, пароль, URL-адрес реестра и т. Д.).

...