aspire deploy requires docker to be running, but azd up doesn't
- 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.
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
Assessment
This issue has not been assessed yet.