Создание образов Windows Docker: Lambda-EC2, Docker Hub и AWS ECR

Проблема

Проблема в том, что CodeBuild не может создать образ Windows Docker. Это происходит из-за того, что CodeBuild выполняется внутри контейнера Docker, а Microsoft не поддерживает Docker внутри Docker.

Я знаю, это не первый вопрос по этой теме, т.е. это. Но я предполагаю некоторые альтернативы стандартному рабочему процессу, который выглядит как это.

Важно: Насколько я понимаю, образ Windows Docker для Microsoft Server 2016 можно собрать только из системы/контейнера Microsoft Server 2016.

Стандартный подход

  1. CodeBuild запускает Lambda
  2. Lambda запускает образ EC2 с Docker
  3. Экземпляр EC2 извлекает исходный код, создает образ из Dockerfile, передает образ в репозиторий и запускает CodePipeline.
  4. CodePipeline развертывает образ

Вопросы

Вместо того, чтобы внедрять пользовательский этап сборки образа, мы можем использовать одно из сторонних решений: Docker Hub или AWS ECR.

  1. Может ли AWS ECR создавать образы Docker из файла Docker? Можно ли делать сборки на системе/контейнере Microsoft Server 2016?
  2. Может ли Docker Hub создавать образы Docker в системе/контейнере Microsoft Server 2016?

comment
Или вы можете просто создать Azure Devops бесплатно с помощью бесплатных агентов сборки WIndows, а затем загрузить в AWS ECR или Azure ACR.   -  person Gregory Suvalian    schedule 06.03.2019
comment
@GregorySuvalian, не могли бы вы предоставить более подробную информацию? Я не DevOps, а просто разработчик, управляющий CI/CD. Как мне вызвать Azure Devops из CodePipeline? Поддерживает ли Azure мое требование о Windows Server 2016? Сколько confings это потребует?   -  person VB_    schedule 06.03.2019
comment
@GregorySuvalian, мы занимаемся DevOps через CloudFormation. Насколько я понимаю, Azure DevOps потребует настройки DevOps Pipeline за пределами CloudFormation, верно?   -  person VB_    schedule 06.03.2019
comment
Да, он размещен и предоставлен корпорацией Майкрософт.   -  person Gregory Suvalian    schedule 06.03.2019
comment
@GregorySuvalian извините, это не наш вариант. Пусть это будет внутри CoudFormation или не требует или требует минимальных конфигураций   -  person VB_    schedule 06.03.2019