使用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!

推薦閱讀: