MySQL hosting extensions

MySQL logo
⭐ Community Toolkit

The Aspire Community Toolkit MySQL hosting extensions package provides extra functionality to the Aspire.Hosting.MySql hosting package.

This package provides the following features:

Hosting integration

To get started with the Aspire Community Toolkit MySQL hosting extensions, install the CommunityToolkit.Aspire.Hosting.MySql.Extensions NuGet package in the app host project.

Install the NuGet package
dotnet add package CommunityToolkit.Aspire.Hosting.MySql.Extensions

Add management UI

DbGate management UI

To add the DbGate management UI to your MySQL resource, call the WithDbGate method on the MySqlServerResourceBuilder instance:

var builder = DistributedApplication.CreateBuilder(args);
  
var mysql = builder.AddMySql("mysql")
                   .WithDbGate();
  
builder.AddProject<Projects.ExampleProject>()
       .WithReference(mysql);
  
// After adding all resources, run the app...

This adds a new DbGate resource to the app host which is available from the Aspire dashboard. DbGate is a comprehensive database management tool that provides a web-based interface for managing your MySQL databases.

Adminer management UI

To add the Adminer management UI to your MySQL resource, call the WithAdminer method on the MySqlServerResourceBuilder instance:

var builder = DistributedApplication.CreateBuilder(args);
  
var mysql = builder.AddMySql("mysql")
                   .WithAdminer();
  
builder.AddProject<Projects.ExampleProject>()
       .WithReference(mysql);
  
// After adding all resources, run the app...

This adds a new Adminer resource to the app host which is available from the Aspire dashboard. Adminer is a lightweight database management tool that provides a simple web interface for database operations.

Using both management UIs

You can use both management UIs together on the same MySQL resource:

var builder = DistributedApplication.CreateBuilder(args);
  
var mysql = builder.AddMySql("mysql")
                   .WithDbGate()
                   .WithAdminer();
  
builder.AddProject<Projects.ExampleProject>()
       .WithReference(mysql);
  
// After adding all resources, run the app...

See also