Skip to content

seemple/docker-sqlserver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Construir la imagen:

docker compose build

Ejecutar el contenedor:

docker compose up -d

Acerca de los permisos:

El usuario que ejecuta comandos en el contenedor NO existe en el equipo local. Debido a que el contenedor posee un volumen (un enlace entre el equipo local y el contenedor para persistir los datos al reiniciar el contenedor ) debemos darle permisos de escritura al usuario del contenedor, en el equipo local.

Para ello debemos:

  1. Averiguar el id del usuario del contenedor: docker compose exec -it db id mssql lo cual responderá: uid=10001(mssql) gid=0(root) groups=0(root)

  2. Brindar permisos al usuario mssql(10001) en todas las carpetas del equipo LOCAL para la escritura de la db:

sudo chown -R 10001 /var/lib/docker/volumes/sqlserver-docker_sqldata/
sudo chown -R 10001 /var/lib/docker/volumes/sqlserver-docker_sqllog/

Para averiguar la ubicación de las carpetas relacionadas con los volumenes, puedes ejecutar: docker volume inspect [VOLUME_NAME]

Luego ya podemos crear la base de datos: docker compose exec -it db /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -d master Opción 1: Una vez dentro del contenedor, ejecutar el comando de T-SQL para crear la DB:

CREATE DATABASE [nombre-db];
GO

Opción 2: podemos crear la DB desde un sql file ( que previamente debemos copiar al contenedor ) docker cp start.sql db-sqlserver:/var/opt/sqlserver/backup

Y luego ejecutar el comando con la creación: docker compose exec -it db /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -d master -i /var/opt/sqlserver/backup/start.sql

Copiar DB a restaurar al contenedor: (OPCIONAL) docker cp [nombre-db].bak db-sqlserver:/var/opt/sqlserver/backup

Restaurar DB: USE [master] RESTORE DATABASE [nombre-db] FROM DISK = N'/var/opt/sqlserver/backup/[nombre-db].bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 10

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages