I'm attempting to run the SQL Server container (not Azure SQL Edge) using Podman on an M1 Mac, however running into an error.
I'm attempting to run the command:
podman run -it --rm --platform linux/amd64 -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=MyPass@word" -e "MSSQL_PID=Express" --name=sql mcr.microsoft.com/mssql/server:2022-latest
However I'm getting the following error:
SQL Server 2022 will run as non-root by default.
This container is running as user mssql.
To learn more visit https://go.microsoft.com/fwlink/?linkid=2099216.
/opt/mssql/bin/sqlservr: Invalid mapping of address 0x2aaaacf9b000 in reserved address space below 0x400000000000. Possible causes:
1) the process (itself, or via a wrapper) starts-up its own running environment sets the stack size limit to unlimited via syscall setrlimit(2);
2) the process (itself, or via a wrapper) adjusts its own execution domain and flag the system its legacy personality via syscall personality(2);
3) sysadmin deliberately sets the system to run on legacy VA layout mode by adjusting a sysctl knob vm.legacy_va_layout.
I know there was a similar issue on docker for the SQL Server container on M1 Macs, which was resolved with a recent Docker update that offered a Rosetta Emulation flag, however I'm surprised that if I open a bash shell on that container and do a uname -m
I get x86_64
:
machost$ podman run -it --rm --entrypoint bash mcr.microsoft.com/mssql/server:2022-latest
mssql@f6511b12365a:/$ uname -m
x86_64
I know that Azure SQL Edge will run in Podman on Apple Silicone, however I need access to CLR features, which aren't available on the Azure SQL Edge edition.