Friday, February 13, 2026

Installing SQL Server on Linux in a Docker Container

 I have created two easy to use scripts to install docker and get SQL Server running.  


InstallSqlServerPart1.sh

#!/bin/bash
# Create directory
mkdir -p ~/docker/sqlserver
# Move into directory
cd ~/docker/sqlserver
# Create docker-compose.yml
cat <<EOF > docker-compose.yml
services:
  sqlserver:
    image: mcr.microsoft.com/mssql/server:2022-latest
    container_name: sqlserver
    environment:
      ACCEPT_EULA: "Y"
      MSSQL_SA_PASSWORD: "Str0ng!Passw0rd123"
      MSSQL_PID: "Express"   # If this ever fails, use "Developer"
    ports:
      - "1433:1433"
    volumes:
      - sqlserver_data:/var/opt/mssql
    restart: "no"
volumes:
  sqlserver_data:
EOF
echo "docker-compose.yml created in ~/docker/sqlserver"
sudo apt update
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
docker --version


InstallSqlServerPart2.sh

#!/bin/bash

cd ~/docker/sqlserver
docker compose up -d
docker compose logs -f

After creating the two scripts, make them executable.
chmod +x InstallSqlServerPart1.sh
chmod +x InstallSqlServerPart1.sh

Then execute the first one:
./InstallSqlServerPart1.sh

Logout
Log back in

Then execute the second one:
./InstallSqlServerPart2.sh

Connect with this connection string:
Server=localhost,1433;Database=bedbrigade;User Id=sa;Password=Str0ng!Passw0rd123;Encrypt=True;TrustServerCertificate=True;

Docker Cheat Sheet
docker compose logs –f    # Watch logs to see it running 
docker compose ps         # Check if running 
docker compose stop       # stop 
docker compose start      # start again 
docker compose up -d      # create + start 
docker compose down       # remove container, keep data 
docker compose down -v    # remove container + delete data 




No comments:

Post a Comment