Share via


DockerComposeServiceExtensions.PublishAsDockerComposeService<T> Method

Definition

Publishes the specified resource as a Docker Compose service.

public static Aspire.Hosting.ApplicationModel.IResourceBuilder<T> PublishAsDockerComposeService<T>(this Aspire.Hosting.ApplicationModel.IResourceBuilder<T> builder, Action<Aspire.Hosting.Docker.DockerComposeServiceResource,Aspire.Hosting.Docker.Resources.ComposeNodes.Service> configure) where T : Aspire.Hosting.ApplicationModel.IComputeResource;
static member PublishAsDockerComposeService : Aspire.Hosting.ApplicationModel.IResourceBuilder<'T (requires 'T :> Aspire.Hosting.ApplicationModel.IComputeResource)> * Action<Aspire.Hosting.Docker.DockerComposeServiceResource, Aspire.Hosting.Docker.Resources.ComposeNodes.Service> -> Aspire.Hosting.ApplicationModel.IResourceBuilder<'T (requires 'T :> Aspire.Hosting.ApplicationModel.IComputeResource)> (requires 'T :> Aspire.Hosting.ApplicationModel.IComputeResource)
<Extension()>
Public Function PublishAsDockerComposeService(Of T As IComputeResource) (builder As IResourceBuilder(Of T), configure As Action(Of DockerComposeServiceResource, Service)) As IResourceBuilder(Of T)

Type Parameters

T

The type of the resource.

Parameters

builder
IResourceBuilder<T>

The resource builder.

configure
Action<DockerComposeServiceResource,Service>

The configuration action for the Docker Compose service.

Returns

The updated resource builder.

Remarks

This method checks if the application is in publish mode. If it is, it adds a customization annotation that will be applied by the DockerComposeInfrastructure when generating the Docker Compose service.

builder.AddContainer("redis", "redis:alpine").PublishAsDockerComposeService((resource, service) =>
{
    service.Name = "redis";
});

Applies to