cc_supra
cc_supra

Reputation: 11

Docker Build Failing on Azure Pipeline due to COPY --from=build

Hi guys i'm having trouble getting the COPY --from=build /src /dest in azure build pipeline. Its working on my local though... please see code below

Dockerfile

#Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed.
#For more information, please see https://aka.ms/containercompat 

FROM mcr.microsoft.com/dotnet/framework/sdk:4.7.2-windowsservercore-ltsc2019 AS build
WORKDIR /src

COPY . .
COPY SimpleWeb/*.csproj ./SimpleWeb/
COPY SimpleWeb/*.config ./SimpleWeb/
RUN nuget restore

COPY SimpleWeb/. ./SimpleWeb/
WORKDIR /src/SimpleWeb
RUN msbuild /p:Configuration=Release

FROM mcr.microsoft.com/dotnet/framework/aspnet:4.7.2-windowsservercore-ltsc2019 AS runtime
WORKDIR /inetpub/wwwroot
COPY --from=build /src/SimpleWeb/bin/Release/Publish/. .

Azure Pipeline.yml

# ASP.NET Core (.NET Framework)
# Build and test ASP.NET Core projects targeting the full .NET Framework.
# Add steps that publish symbols, save build artifacts, and more:
# https://learn.microsoft.com/azure/devops/pipelines/languages/dotnet-core

trigger:
- master

pool:
  vmImage: 'windows-latest'

steps:
- task: Docker@2
  displayName: Build
  inputs:
    containerRegistry: 'container-registry-dockerhub'
    repository: 'myrepo'
    command: 'build'
    Dockerfile: '**/Dockerfile'
    tags: 'latest'
- task: Docker@2
  displayName: Push
  inputs:
    containerRegistry: 'container-registry-dockerhub'
    repository: 'myrepo'
    command: 'push'
    tags: 'latest'

ERROR from Azure CI build

Step 12/21 : COPY --from=build /src/SimpleWeb/bin/Release/Publish/. .
COPY failed: CreateFile \\?\Volume{a4952e14-500f-4d78-9efe-1a9e638e3459}\src\SimpleWeb\bin\Release\Publish: The system cannot find the path specified.
##[error]The process 'C:\Program Files\Docker\docker.exe' failed with exit code 1

------EDITED------ this works though:

COPY --from=build /src/SimpleWeb/. .

i'm not sure why the bin/Release/Publish is not generated on the Azure Pipeline

Upvotes: 1

Views: 1143

Answers (1)

Stephen Raman
Stephen Raman

Reputation: 297

You can try using dotnet restore instead of nuget restore.

nuget restore will download all NuGet dependencies to your project. dotnet restore will download all NuGet dependencies as well as references and tools.

Upvotes: 1

Related Questions