使用docker創(chuàng)建和運(yùn)行跨平臺的容器化mssql數(shù)據(jù)庫
我們一般啟用sql server數(shù)據(jù)庫要么選擇安裝SQL Server實(shí)例和管理工具(SSMS),要么用vs自帶的數(shù)據(jù)庫。如今net跨平臺成為趨勢,今天給大家介紹另一種我最近在玩的方式,即使用docker創(chuàng)建并啟用sql數(shù)據(jù)庫。
本章介紹了在window10專業(yè)版下如何利用docker創(chuàng)建mssql數(shù)據(jù)庫,包括以下主題:
- 安裝并驗(yàn)證docker
- 利用docker創(chuàng)建mssql實(shí)例
- 使用vs2022連接sql
首先我們看下sql自帶的數(shù)據(jù)庫管理工具,打開vs2022-視圖-SQL Server對象資源管理器,在SQL Server實(shí)例中第一個選項(xiàng)就是vs自帶的數(shù)據(jù)庫。

在接下來的內(nèi)容中我們來試著添加一個基于docker的數(shù)據(jù)庫容器鏡像。
1.開啟虛擬化服務(wù)
在安裝docker之前,需要確保虛擬化服務(wù)是開啟狀態(tài)。右鍵win圖標(biāo),選擇應(yīng)用和功能(或者打開控制面板),點(diǎn)擊程序和功能-啟用或關(guān)閉windows功能,勾選Hyper-V,點(diǎn)擊確定開啟功能。(如果是win10家庭版的話,是看不到Hyper-V選項(xiàng)的,比較麻煩,需要修改注冊表,但網(wǎng)上有教程,可以搜索并按照教程做)

2.安裝Docker desktop
在docker官網(wǎng)根據(jù)需要選擇下載安裝程序,我們選擇windows版本。安裝完成以后docker會自動啟動,任務(wù)欄會有一個鯨魚圖標(biāo),表明docker正在運(yùn)行。

我們可以通過命令行驗(yàn)證一下docker的安裝情況,輸入docker --version可以看到版本信息

也可以郵件鯨魚圖標(biāo),點(diǎn)擊About Docker Desktop查看

3.部署本地mssql數(shù)據(jù)庫
第一步:拉取SQL Server 2019 Linux 容器鏡像,打開命令行,輸入docker pullmcr.microsoft.com/mssql/server:2019-latest

輸入docker images查看鏡像

第二步:1.運(yùn)行容器鏡像,命令行輸入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表示接受最終用戶許可協(xié)議
SA_PASSWORD=MyStrongPwd!2#表示賬戶名sa,密碼MyStrongPwd!2#
-p設(shè)置端口 1433:1433 前者表示對外提供的訪問端口號,后者表示容器內(nèi)部的端口號(如果這一步報錯"docker: Error response from daemon: Ports are not available...",這說明端口被占用了,一般是被sqlserver服務(wù)占用了,可以打開sqlserver配置管理器將Sql server服務(wù)停止即可)
-d設(shè)置鏡像名,設(shè)置為拉取的鏡像mcr.microsoft.com/mssql/server:2019-latest
還可以通過 --name xxxx為容器指定一個自定義名稱,通過--hostnam xxxx設(shè)置容器主機(jī)名,如果不設(shè)置docker會隨機(jī)給容器命名。
2.查看運(yùn)行狀況,命令行輸入docker ps,可以看到正在運(yùn)行

3.另外也能在Docker Desktop-Container查看剛剛創(chuàng)建的容器

4.使用VS驗(yàn)證
打開vs的SQL Server對象資源管理器,點(diǎn)擊左上角添加 SQL Server按鈕,輸入信息,點(diǎn)擊連接

完成后在SQL Server實(shí)例列表里可以看到新增了一個localhost服務(wù)器,說明vs已經(jīng)連接上docker創(chuàng)建的sql了

因?yàn)檫€沒有創(chuàng)建數(shù)據(jù)庫,所以只能看到系統(tǒng)數(shù)據(jù)庫,下一篇我們將使用EFCore創(chuàng)建并初始化數(shù)據(jù)庫。
到此這篇關(guān)于使用docker創(chuàng)建和運(yùn)行跨平臺的容器化的mssql數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)使用docker創(chuàng)建和運(yùn)行跨平臺的容器化的mssql數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker下安裝Mongo4.2及客戶端工具連接Mongo
這篇文章主要介紹了Docker下安裝Mongo4.2和客戶端工具連接Mongo數(shù)據(jù)庫的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-01-01
解決Docker中的error during connect異常情況
這篇文章主要介紹了解決Docker中的error during connect異常情況,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
Docker 解決容器時間與主機(jī)時間不一致的問題三種解決方案
這篇文章主要介紹了Docker 解決容器時間與主機(jī)時間不一致的問題的相關(guān)資料,這里提供了三種方法,供大家參考,需要的朋友可以參考下2016-12-12
Docker 容器指定自定義網(wǎng)段的固定IP/靜態(tài)IP地址
這篇文章主要介紹了Docker 容器指定自定義網(wǎng)段的固定IP/靜態(tài)IP地址的相關(guān)資料,需要的朋友可以參考下2016-12-12
Windows?Server?2012?R2?安裝?Docker的詳細(xì)步驟
這篇文章主要介紹了Windows?Server?2012?R2?安裝?Docker,在這個給大家說明下使用windows10、Windows?Server?2016以上系統(tǒng)可直接使用安裝包,低版本系統(tǒng)需要使用?Docker?Toolbox?來進(jìn)行安裝使用?Docker,需要的朋友可以參考下2022-04-04
詳解Docker 配置國內(nèi)免費(fèi)registry mirror
本篇文章主要介紹了 Docker 配置國內(nèi)免費(fèi)registry mirror,具有一定的參考價值,有興趣的小伙伴們可以參考一下2017-07-07
Docker安裝MySql8并遠(yuǎn)程訪問的實(shí)現(xiàn)
本文主要介紹了Docker安裝MySql8并遠(yuǎn)程訪問的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07

