Public Repository

Last pushed: 2 months ago
Short Description
Official Microsoft SQL Server Express Edition images for Windows Containers
Full Description

Microsoft SQL Server Express for Windows Containers. Learn more about the latest release of SQL Server Express by visiting this documentation link.

Intended Use: Development and Testing only. Not supported in production environments.

Additional Microsoft SQL Server Docker Images


This image is compatible with Windows Server 2016 (Core, with Desktop) and Windows 10 (Professional, Enterprise - Anniversary Edition) OS Hosts. Visit this link for the full list of Windows container requirements.

Getting Started Links

Note: If you want to run Windows and Linux docker images simultaneously on the same Windows 10 Host, you’ll need to install Docker for Windows beta (that includes a GUI option to switch between Windows and Linux Docker engine) from Docker’s beta channel.

Supported tags and respective Dockerfile links

  • 2016-sp1, 2016, latest (Dockerfile)
  • 2016-windowsservercore-10.0.14393.447, 2016-sp1-windowsservercore-10.0.14393.447 (used for internal tagging)

How to use this image

Start a mssql server instance

docker run -d -p 1433:1433 -e sa_password=<SA_PASSWORD> -e ACCEPT_EULA=Y microsoft/mssql-server-windows-express

Connect to Microsoft SQL Server

You can connect to the SQL Server instance from inside the same container by using the sqlcmd utility, or from outside the container by downloading SQL Server Management Studio (SSMS). Follow this blog for detailed steps on how to connect to the SQL Server instance from inside or outside the container.

Environment Variables
  • ACCEPT_EULA: Confirms acceptance of the end user licensing agreement found here.

  • sa_password: The system administrator (userid = 'sa') password used to connect to SQL Server once the container is running. The password must meet the password complexity requirements found here: <LINK>

  • attach_dbs (optional parameter): The configuration for attaching custom DBs (.mdf, .ldf files). The following example shows all parameters in action:
    docker run -d -p 1433:1433 -e sa_password=<SA_PASSWORD> -e ACCEPT_EULA=Y -v C:/temp/:C:/temp/ -e attach_dbs="[{'dbName':'SampleDb','dbFiles':['C:\\temp\\sampledb.mdf','C:\\temp\\sampledb_log. ldf']}]" microsoft/mssql-server-windows-express

User Feedback

  • For issues with or questions about this image, please contact us through a GitHub issue.
  • For Windows Container specific troubleshooting questions, please post the issue along with the docker info & docker version here.

Further Reading


Docker Pull Command

Comments (13)
12 days ago

Setting 'sa' password has failed and can't logging in if it is not complex enough.

4 months ago


This is often because you don't have right dependencies.

Make sure you try to download it on a Windows 10 (with the anniversary update) or Windows Server 2016.

Install the docker beta version and switch to Windows containers.

Take a look those links for Windows 10 and Windows Server 2016

4 months ago

still got “Unknown Blob”

4 months ago


Could you please follow the instructions on the below article on running Windows Containers on Windows 10 and let us know if you are still having issues?

4 months ago

Keep having the "unknown blob" problem, even if my environment is all Microsoft.
I am running Docker for Windows on Windows 10 Pro (Anniversary Update) with HyperV.

5 months ago

I had the "unknown blob" problem.

Turns out I was using the Linux version of the docker daemon on Windows 10:

Stefan Scherer has a helpful blog post on how to install 1.12.3-beta which allows you to easily switch between Linux and Windows Daemons:

5 months ago


Could you please post this issue along with the docker info & docker version at the Windows Container troubleshooting questions forum:

We will probably need to have some back & forth discussion to get the right details. That’s really hard in a comment feed.

5 months ago

The same here. It keeps re-downloading

5 months ago

[@cramhead, @plasteelefant]
Thanks for trying out the SQL Server Express Windows Docker Image!

This image works on Windows Server 2016 (Core and with Desktop Experience) and Windows 10 Professional and Enterprise (Anniversary Edition).

So there are two options for running SQL on Mac OS:

  1. Setup a Windows Server 2016 or Windows 10 VM and run the image there.

  2. Use the SQL Server for Linux Docker image:

5 months ago

Same here. Seems like downloads that have successfully downloaded got redownloaded.
Using Docker version 1.12.3, build 6b644ec on MacOS Sierra