公司筆電因為權限問題,安裝MS SQL時都會一直報錯,無法安裝,但有些功能還是MS SQL使用比較習慣。
後來決定自己在VirtualBox上架個Linux的VM(不選Windows是因為不想花錢買序號)在裡面架設MS SQL SERVER,但步驟又有點複雜,且架好之後,本機又會連線不到VM環境的SQL SERVER,也沒那麼多時間去研究環境問題,於是就放棄了。
後來又在Azure上架了一台MS SQL Server,雖然步驟不複雜,也可以成功連線,但試用期過後每個月都要扣錢,對於只是用來做些測試功能的我來說,實在是不划算。
後來想說自己也沒有接觸過Docker這個東西,就趁這個機會,架了一個SQL SERVER服務,結果也能成功連線,就順便把整個過程記錄下來。
下載Docker Desktop on window
Step 1. 下載Docker Desktop on window
相關安裝流程可以參考參考連結1.
Step 2. 安裝WSL2
Docker Desktop安裝完成後,會要你也更新WSL。簡單來說這個)子OS,我是選擇安裝ubuntu 20.04 TSL。詳細安裝流程可以參考連結
Step 3. pull Image & 查詢Image
到Docker Hub找到sqlserver的image,並pull下來。我在Docker Hub搜尋mssql都找不到Microsoft官方的image,後來直接用谷歌[docker mssql image]就有了。
相關連結:https://hub.docker.com/_/microsoft-mssql-server
網頁裡會有pull cmd讓你複製
我也順便附上cmd
docker pull mcr.microsoft.com/mssql/server
拉下來後,可以查詢Image
docker images
Step 4.建立Container
把image拉下來後,就可以開始建立Container了。相關的cmd,sqlserver Docker Hub的網頁裡面也有。不同的版本cmd也會不一樣!!!
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=[你的密碼]" -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest
建立Container後查詢Container
docker ps
發現預設的cmd好像沒有指定Container的名字,會給一個預設值wonderful_golick。但我想自己命名阿~於是就想說順便練習一下如何刪除Container吧。
想要自己命名Container名稱的可以參考下面的cmd。
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=[你的密碼]" -p 1433:1433 --name [Container name] -d mcr.microsoft.com/mssql/server:2019-latest
Step 4.1. 刪除Container (不想重做Container可以跳過)
建立Container先停止運行中的Container
docker stop [Container ID]
刪除Container
docer rm [Container ID]
重新查詢一次Container,目前已經沒有了
Step 5. 使用SSMS測試連線
連線成功了
Reference:
1.[Docker]建立一個 Sql Server container
2.[Docker]初體驗!使用Docker建立SQL Server On Linux
3.DOCKER 基本指令 – 停止、移除 DOCKER CONTAINER 和 IMAGE
4.Docker Hub_MSSQL Image下載