Creando una base de datos Microsoft SQL Server con Docker sobre Linux

    A continuación un breve resumen de como tener SQL Server corriendo sobre docker en tu servidor Linux.

    Creamos un directorio para tener todo más ordenador:

    mkdir sqlserver && cd sqlserver

    Crear fichero docker-compose.yml: vi docker-compose.yml

      version: '3.8'
      services:
        sql-server:
          # user: root #Si da problemas de permisos descomentar esta linea.
          image: mcr.microsoft.com/mssql/server
          container_name: sql-server-container
          environment:
            - ACCEPT_EULA=Y
            - SA_PASSWORD=passwordFuerte123!!
            - MSSQL_PID=Express
            - MSSQL_TCP_PORT=1433
            - MSSQL_UID=1000
          ports:
            - "1433:1433"
          networks:
            - sql-bridge-network
          restart: unless-stopped
          volumes:
            - ./mssql:/var/opt/mssql
            - ./backups:/var/backups
            # Volumen persistente para almacenar datos de las bases de datos
      
      networks:
        sql-bridge-network:
          driver: bridge
          # Puedes cambiar 'bridge' a otro tipo de red según tus necesidades
      
    

    Correr y ver logs del contenedor

    docker compose up -d && docker compose logs -f

    Una vez funcionando podemos entrar a la base de datos con SSMS user SA y Password que hayas escogido.

    Creamos un usuario y base de datos nueva con el siguiente fragmento de SQL

      --Crear base de datos
      CREATE DATABASE LTEMV;
      GO
      USE MINUEVADB;
      GO
      -- Crear un nuevo usuario y habilitar conexiones remotas  
      USE master;  
      CREATE LOGIN tuusuario WITH PASSWORD='passwordFuerte123!!';  
      -- Habilita el inicio de sesión del usuario
      ALTER LOGIN tuusuario ENABLE;  
      -- Crea un usuario asociado al inicio de sesión
      CREATE USER tuusuario FOR LOGIN tuusuario ;
      -- Agrega al usuario tuusuario al rol de propietario de la base de datos (db_owner).
      ALTER ROLE db_owner ADD MEMBER tuusuario ;
      -- Otorga al usuario tuusuario permisos para ver cualquier base de datos.
      GRANT VIEW ANY DATABASE TO tuusuario ;
    

    Y con esto ya tendrías tu motor de base de datos Microsoft SQL Server corriendo como un contenedor Docker sobre tu Servidor Linux. Además habremos creado un usuario nuevo y una base de datos para empezar a trabajar sobre ella.

    Espero que te haya sido de ayuda