[Windows Container] SQL Server

   好一陣子沒玩Windows Container,今天剛好看到一篇介紹如何使用SQL Server Containers,除了跟著玩一篇,
也由於電腦重灌,順便將整個從頭到尾的安裝過程再跑一次。 
  
1.Install Windows Container

打開Power Shell,執行如下
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName containers -All

ps:Window10 要  14393.222 或更新版本再繼續,安裝完成時,要重新啟動電腦

2.Install Dock

有2種方式

1.參考官方教學的第二點,使用指令安裝

*2.直接安裝Dock for Windows(本文使用此方式)

裝完後,在圖示按右鍵切換至Windows Container

關於Dock for Windows參考如下:

3.安裝SQL Server Container

docker pullmicrosoft/mssql-server-windows

建立container

建立container名稱為 SQTest,並將本機的d:/Temp/Database 對應到 Container的c:/DB/ 作為匯入備份檔用

docker run -it --name SQLTest -d -p 1433:1433 -e sa_password=kim123 -e ACCEPT_EULA=Y -v D:/Temp/Database/:c:/DB/ microsoft/mssql-server-windows

上方命令若知道NAT ip範圍,可以在啟動時指定ip,如下:

 docker run -it --name SQLTest --ip 172.25.171.182 -d -p 1433:1433 -e sa_password=kim123 -e ACCEPT_EULA=Y -v D:/Temp/Database/:c:/DB/ microsoft/mssql-server-windows

補充:查詢預設NAT網路設定

 docker inspect  nat


若你跟我一樣,不會Subnet 計算ip範圍,可以到下方連結計算。


匯入備份檔backup.bak

docker exec SQLTest SqlCmd -E -S 172.25.171.182 -Q "RESTORE DATABASE [UnderBingo] FROM  DISK = N'C:\db\UnderBingo.bak' WITH  FILE = 1
,  MOVE N'UnderBingo' TO N'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\DATA\UnderBingo.mdf'
,  MOVE N'UnderBingo_log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\DATA\UnderBingo_log.ldf'
,  NOUNLOAD,  STATS = 5"

匯入後,打開SSMS連線SQL Container

參考來源


這個網誌中的熱門文章

IIS 設定只允許特定IP進入

[Sql Server] 資料庫備份筆記