Estos días estoy haciendo unas pruebas con .NET Core y quería hacer uso de SQL Server, pero desde mi Mac. Quería que todas las piezas estuvieran en local, y es por eso que en este artículo quiero contarte cómo trabajo con SQL Server, utilizando Docker y Azure Data Studio.
Contenedor con SQL Server
Lo primero que vamos a hacer es crear un contenedor con SQL Server 2017. Para ello puedes utilizar el siguiente comando que ejecuta la última versión:
docker run \
-e 'ACCEPT_EULA=Y' \
-e 'SA_PASSWORD=Password1!' \
-e 'MSSQL_PID=Express' \
--name sqlserver \
-v mssqlserver_volume:/var/opt/mssql \
-p 1433:1433 -d mcr.microsoft.com/mssql/server:latest
Para probar el acceso a nuestro nuevo servidor puedes utilizar la herramienta sqlcmd dentro del contenedor:
docker exec -it sqlserver/opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P Password1!
Por último voy a crear una base de datos de pruebas a través de sqlcmd:
CREATE DATABASE Products
GO
El resultado debería de ser el siguiente:

Azure Data Studio
Con lo que te he mostrado hasta ahora, podrías trabajar sin problemas con SQL Server 2017 en Mac, pero es posible que quieras acceder de una forma más visual a tus bases de datos. Para ello te recomiendo Azure Data Studio, una herramienta multiplataforma que te permite acceder a tus bases de datos. Una vez instalada, para acceder a tu servidor SQL en Docker, solamente debes utilizar la siguiente configuración:

El servidor está ubicado en localhost y las credenciales son las que elegiste cuando creaste el contenedor. Si los datos introducidos son correctos ya podrás ver tu SQL Server y la base de datos Products que acabas de crear:

22 de Noviembre de 2021: si estás usando Apple M1, echa un vistazo a este otro artículo.
¡Saludos!

Bootcamp DevOps
Si tienes ganas de meterte en el área de DevOps, formo parte del
equipo de docentes del Bootcamp DevOps Lemoncode, ¿Te animas a
aprender con nosotros?