Since there is core, you can develop web apps on a mac. If you want to persist data with Entity Framework or similar technologies you want to have a database where you can store data while developing and testing.

On a Windows machine you have the option to use a localdb which emulates a MSSQL Server. On a mac you have a similar option since .net core 3 I think. But if you want to run a real MSSQL Server anyways, you can do this by starting a docker container.

First you need to install docker for mac. You can download it here and simply install it.

Then you need to pull the Docker image manually because its not located on docker-hub anymore but on Microsofts Registry. To do that, execute the following command:

docker pull

This will download the latest edition.

To start a docker container from this image you must run this command:

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=YOURPASSWORDHERE" -p 1433:1433 --name mssql -d

This will create a docker container and bind its SQL Port to localhost:1433.

Hint: You can check the status of the container with docker ps -a.
Another Hint: If the container is not running (e.g. because you restarted your mac) you can use docker start mssql to restart your container.

If you want to check your DBs with a Graphical Client you can use Azure Data Studio.