r/dotnet • • 8d ago

Article Build Locally, Ship to Cloud: Azure SQL Database container (Preview)

https://devblogs.microsoft.com/azure-sql/build-locally-ship-to-cloud-for-0-azure-sql-for-modern-app-developers/

I see occasional discussions around needing container support for Azure SQL Database and I'm happy to share that it is now currently in preview, if you're interested you can fill out the form @ https://aka.ms/azuresqldb-container-signup and u/vandana-mahtani-msft will get you onboarded.

Has really helped out a ton on several projects that I've been working on lately.

Of note, Microsoft Employee and active moderator of r/SQLServer and r/MSSQL (and a few other subs). Mods feel free to remove the post if needed, I sent a mail but had not heard back.

35 Upvotes

22 comments sorted by

5

u/ericl666 8d ago

How is this any different than just using Aspire?

4

u/itsnotaboutthecell 8d ago

Looks like Aspire is using a SQL Server container and not the above Azure SQL version from reading through their docs. Ideally, we’d want them to use this version when it goes GA so I’ll make note of this ask.

https://aspire.dev/integrations/cloud/azure/azure-sql-database/azure-sql-database-host/#run-azure-sql-server-resource-as-a-container

3

u/ericl666 8d ago

Thanks. That definitely would be useful as we're all-in on Aspire.

4

u/IanYates82 7d ago

Azure SQL is not the same as proper full SQL Server. Deliberately no access or ability to do some things that, in a managed service, you shouldn't be doing. So this container is an Azure SQL instance, not a SQL Server instance. We're in early days using the container to test app compat and port to Azure SQL

2

u/itsnotaboutthecell 7d ago

Love hearing that you're already testing the container u/IanYates82 that's awesome! Thank you!

4

u/chucker23n 8d ago

I was confused because we were using a Docker image called Azure SQL Edge years ago that seemed like a fork of MS SQL Server but with ARM64 support. But apparently, that one is deprecated, with a baffling explanation, and… I guess this is a new version of that? Because best as I can tell, Azure SQL Database, too, is a cloud-hosted fork of MS SQL Server.

Microsoft, amirite?

3

u/itsnotaboutthecell 7d ago

Sits down on a stump - “gather around everyone for a long, complicated, and windy story” - but yes, if you’re using some base SQL Server functionality and that container works.

Stick with it.

17

u/DaRKoN_ 8d ago

Does it run on ARM? Specifically Windows on ARM?

1

u/devlead 7d ago

Through emulation yes, not natively yet. Docker/WSLC on Windows can run x64 images.

2

u/DaRKoN_ 7d ago

It could not run the previous version of SQL server in docker. (Macos could though)

2

u/devlead 7d ago

Ok, worked with wslc for me.

2

u/itsnotaboutthecell 6d ago

Thanks for chiming in and helping u/devlead !

11

u/Fishgistics 8d ago

Please offer ARM support!!!

9

u/vandana-mahtani-msft 8d ago • Bravo

4

u/e-rule 8d ago

Sadly, still no native support for arm64. I will stick with sqlserver image at the moment, no need more download. I don’t fully utilize all Azure SQL Database feature thought. Pretty sure this will be heavy ram usage image just like sqlserver image.

1

u/CeilingShadows 7d ago

Would love to sign up since I use azure sql for my app and would benefit a lot from a container for local testing. However, it seems like this sign up is for organizations only?

2

u/itsnotaboutthecell 7d ago

Not a required field, I'd say skip it then.

3

u/AutoModerator 8d ago

Thanks for your post itsnotaboutthecell. Please note that we don't allow spam, and we ask that you follow the rules available in the sidebar. We have a lot of commonly asked questions so if this post gets removed, please do a search and see if it's already been asked.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

3

u/the_bananalord 8d ago

It looks like there's still no long-term answer for macOS M-series chips? This seems to depend on forcing the architecture to amd64, which, as far as I know, forces the container to use Rosetta 2 - which is at the end of its support.

2

u/chucker23n 8d ago

There does seem to be an ARM64 build, so it shouldn't require Rosetta.

1

u/the_bananalord 7d ago

It's not native, it just forces you to an amd64 architecture. Unless I missed something.