使用docker創建和運行跨平臺的容器化mssql數據庫
我們一般啟用sql server數據庫要麼選擇安裝SQL Server實例和管理工具(SSMS),要麼用vs自帶的數據庫。如今net跨平臺成為趨勢,今天給大傢介紹另一種我最近在玩的方式,即使用docker創建並啟用sql數據庫。
本章介紹瞭在window10專業版下如何利用docker創建mssql數據庫,包括以下主題:
- 安裝並驗證docker
- 利用docker創建mssql實例
- 使用vs2022連接sql
首先我們看下sql自帶的數據庫管理工具,打開vs2022-視圖-SQL Server對象資源管理器,在SQL Server實例中第一個選項就是vs自帶的數據庫。
在接下來的內容中我們來試著添加一個基於docker的數據庫容器鏡像。
1.開啟虛擬化服務
在安裝docker之前,需要確保虛擬化服務是開啟狀態。右鍵win圖標,選擇應用和功能(或者打開控制面板),點擊程序和功能-啟用或關閉windows功能,勾選Hyper-V,點擊確定開啟功能。(如果是win10傢庭版的話,是看不到Hyper-V選項的,比較麻煩,需要修改註冊表,但網上有教程,可以搜索並按照教程做)
2.安裝Docker desktop
在docker官網根據需要選擇下載安裝程序,我們選擇windows版本。安裝完成以後docker會自動啟動,任務欄會有一個鯨魚圖標,表明docker正在運行。
我們可以通過命令行驗證一下docker的安裝情況,輸入docker –version可以看到版本信息
也可以郵件鯨魚圖標,點擊About Docker Desktop查看
3.部署本地mssql數據庫
第一步:拉取SQL Server 2019 Linux 容器鏡像,打開命令行,輸入docker pullmcr.microsoft.com/mssql/server:2019-latest
輸入docker images查看鏡像
第二步:1.運行容器鏡像,命令行輸入docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=MyStrongPwd!2#" -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest
其中:ACCEPT_EULA=Y表示接受最終用戶許可協議
SA_PASSWORD=MyStrongPwd!2#表示賬戶名sa,密碼MyStrongPwd!2#
-p設置端口 1433:1433 前者表示對外提供的訪問端口號,後者表示容器內部的端口號(如果這一步報錯"docker: Error response from daemon: Ports are not available…",這說明端口被占用瞭,一般是被sqlserver服務占用瞭,可以打開sqlserver配置管理器將Sql server服務停止即可)
-d設置鏡像名,設置為拉取的鏡像mcr.microsoft.com/mssql/server:2019-latest
還可以通過 –name xxxx為容器指定一個自定義名稱,通過–hostnam xxxx設置容器主機名,如果不設置docker會隨機給容器命名。
2.查看運行狀況,命令行輸入docker ps,可以看到正在運行
3.另外也能在Docker Desktop-Container查看剛剛創建的容器
4.使用VS驗證
打開vs的SQL Server對象資源管理器,點擊左上角添加 SQL Server按鈕,輸入信息,點擊連接
完成後在SQL Server實例列表裡可以看到新增瞭一個localhost服務器,說明vs已經連接上docker創建的sql瞭
因為還沒有創建數據庫,所以隻能看到系統數據庫,下一篇我們將使用EFCore創建並初始化數據庫。
到此這篇關於使用docker創建和運行跨平臺的容器化的mssql數據庫的文章就介紹到這瞭,更多相關使用docker創建和運行跨平臺的容器化的mssql數據庫內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Docker部署SQL Server及最佳應用小結
- .NET 6開發TodoList應用引入數據存儲
- Docker Desktop常見的幾種啟動失敗問題解決方法
- 使用.NET 6開發TodoList應用之引入數據存儲的思路詳解
- 安裝Docker Desktop報錯WSL 2 installation is incomplete的問題(解決報錯)