Я пытаюсь опубликовать sh docker контейнер в AWS ECR / ECS, используя Azure Devops Pipeline. так что мне делать:
- Я создал asp. NET проект WebApi (не ядро)
- Я добавил файл Docker из Visual Studio 2019 (у меня нет изменил файл по умолчанию)
- Я выдвинул репо в azure devops
- Я создал конвейер сборки для построения решения
- Я добавил операцию сборки docker к конвейеру
- Попробуй Pu sh Изображение к AWS ECR
В результате получается, что до сборки решения все работает, но когда я пытаюсь собрать docker У меня ошибка копирования (это журнал):
Starting: build
================================================== ============================
Task: Docker
Description: Build or push Docker images, login or logout, or run a Docker command
Version: 2.162.0
Author: Microsoft Corporation
Help: https://docs.microsoft.com/azure/devops/pipelines/tasks/build/docker
================================================== ============================
"C: \ Program Files \ Docker \ docker.exe" build -fd: \ a \ 2 \ s \ xxx\ xxx\ Dockerfile --label com.azure.dev.image.system.teamfoundationcollectionuri = https: // dev. azure.com/yyy/ --label com.azure.dev.image.system.teamproject = InRule --label com.azure.dev.image.build.repository.name = xxx-backend --label com.azure.dev .image.build.sourceversion = 3580bfefbe0592212a1d9c76c6d30dd472e22748 --label com.azure.dev.image.build.repository.uri = https: //ggg@dev.azure.com/xxx/xxx/_git/xxx-backend .azure.dev.image.build.sourcebranchname = develop --label "com.azure.dev.image.build.definitionname = In WebApi Release Docker rule" --label com.azure.dev.image.build.buildnumber = 20200204.12 - -label com.azure.dev.image.build.builduri = vstfs: /// Build / Build / 11456 -t xxx d: \ a \ 2 \ s \ yyy\ yyy
Sending build context to Docker daemon 3.072kB
Step 1/13: FROM mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
---> a5bc996f06b3
Step 2/13: ARG source
---> Running in f385f2f0cc47
Removing intermediate container f385f2f0cc47
---> 525c70129725
Step 3/13: WORKDIR / inetpub / wwwroot
---> Running in a8b464b080f2
Removing intermediate container a8b464b080f2
---> 534984f17fd7
Step 4/13: COPY $ {source: -obj / Docker / publish}.
COPY failed: CreateFile \\? \ C: \ ProgramData \ docker \ tmp \ docker-builder949209785 \ obj \ Docker \ publish: The system cannot find the path specified.
## [error] The process 'C: \ Program Files \ Docker \ docker.exe' failed with exit code 1
Finishing: build
Мой конвейерный код YAML:
pool:
name: Azure Pipelines
demands:
- msbuild
- visualstudio
steps:
- task: NuGetToolInstaller @ 0
displayName: 'Use NuGet 4.4.1'
inputs:
versionSpec: 4.4.1
- task: NuGetCommand @ 2
displayName: 'NuGet restore'
inputs:
restoreSolution: XXXSolution.sln
- task: VSBuild @ 1
displayName: 'Build solution'
inputs:
solution: XXXSolution.sln
msbuildArgs: '/ p: DeployOnBuild = true / p: WebPublishMethod = Package / p: PackageAsSingleFile = true / p: SkipInvalidConfigurations = true / p: PackageLocation = "$ (build.artifactstagingdirectory) \\"'
platform: '$ (BuildPlatform)'
configuration: '$ (BuildConfiguration)'
- task: PublishBuildArtifacts @ 1
displayName: 'Publish Artifact'
inputs:
PathtoPublish: '$ (build.artifactstagingdirectory)'
ArtifactName: '$ (Parameters.ArtifactName)'
enabled: false
condition: succeededOrFailed ()
- task: ExtractFiles @ 1
displayName: 'Extract files'
inputs:
archiveFilePatterns: '$ (build.artifactstagingdirectory) /XXX.zip'
destinationFolder: '$ (build.artifactstagingdirectory) / XXX / XXX / obj / Docker / publish'
- task: Docker @ 2
displayName: build
inputs:
command: build
Dockerfile: XXX / XXX / Dockerfile
arguments: '-t XXX'
- task: CopyFiles @ 2
displayName: 'Copy Files to: $ (build.artifactstagingdirectory) / obj / Docker / publish'
inputs:
SourceFolder: '$ (build.artifactstagingdirectory)'
TargetFolder: '$ (build.artifactstagingdirectory) / obj / Docker / publish'
enabled: false
- task: AmazonWebServices.aws-vsts-tools.ECRPushImage.ECRPushImage@1
displayName: 'Push Image:'
inputs:
awsCredentials: awsCredentials
regionName: 'eu-west-1'
sourceImageName: XXX
repositoryName: XXX
- task: PublishSymbols @ 2
displayName: 'Publish symbols path'
inputs:
SearchPattern: '** \ bin \ ** \ *. Pdb'
PublishSymbols: false
enabled: false
continueOnError: true
Может кто-нибудь помочь мне понять, где находится ошибка?