microsoft / microsoft/aspire

aspire deploy requires docker to be running, but azd up doesn't

Open
#11,408 13 comments 0 reactions 0 assignees View on GitHub
area-deployment azure
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

When `aspire deploy` runs and needs to publish a .NET project via a container, it fails if Docker Desktop isn't running.

Image

However, when I `azd up` the same app, it doesn't require Docker Desktop to be running.

Looking into azd's code, it looks like they tell the `dotnet publish` command to push to the server:

https://github.com/Azure/azure-dev/blob/1213533c4673df47eaeaaf5133751eb62eba0518/cli/azd/pkg/tools/dotnet/dotnet.go#L182-L190

```
runArgs = runArgs.AppendParams(
"-r", "linux-x64",
"-c", configuration,
"/t:PublishContainer",
fmt.Sprintf("-p:ContainerRepository=%s", imageParts[0]),
fmt.Sprintf("-p:ContainerImageTag=%s", imageParts[1]),
fmt.Sprintf("-p:ContainerRegistry=%s", server),
"--getProperty:GeneratedContainerConfiguration",
)
```

However, in `aspire deploy` we are doing it in 2 steps (step 1 and 3 below):

https://github.com/dotnet/aspire/blob/d82f17385e51b6aebb5170e2ddb023c74e52f987/src/Aspire.Hosting.Azure/AzureDeployingContext.cs#L152-L183

We should see if we can remove this requirement for Docker Desktop to be running during `aspire deploy`.

cc @captainsafia @vhvb1989

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.