[Docker]初體驗!使用Docker建立SQL Server On Linux

最近在練習.NET Core,想說範例資料庫來嘗試使用Docker建立,記錄一下使用的心得

前言

Docker是一種容器化技術,是在作業系統層面上實作虛擬化,可以讓使用者快速布建各種環境,比起以往需要使用VM來說,速度快很多,與VM比較如下圖

如何使用

因為我是使用Windows 10 的電腦,所以請去官方網站下載Docker for Windows

安裝過程就下一步按到底啦,安裝好之後在桌面執行Docker for Windows,右下角的工具列就會出現啟動中,等他啟動完成之後就可以開始使用了

由於Docker是Linux Base的技術實作,所以在Windows 10 的電腦中,預設會開啟Hyper-V,運行一個VM來幫我們模擬Docker環境

接著啟動Winodws Power Shell,輸入docker -h,有出現指令說明的話及安裝成功,詳細Docker指令請參考指令說明。

Docker的使用方式是,先下載Docker Image,在本地端建立Docker Container使用

安裝SQL Server On Linux

要使用Docker Image之前,首先要到Docker Hub去尋找你要的Image,Image的說明頁面也會有如何下載的操作說明,以我要使用的SQL Server On Linux為例

需要使用docker pull microsoft/mssql-server-linux來下載

下載之後,用docker run --name testSQL -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Pa$$word' -p 1433:1433 -d microsoft/mssql-server-linux 建立container

-p 1433:1433是開放port對應,本機電腦port:docker的port
SA_PASSWORD是sa的登入密碼,剛建立之後要使用這組密碼登入
--name testSQL是container的名稱

建立好container之後,使用docker ps來查看container狀態

現在來用SSMS連線看看吧,使用sa的帳號密碼登入,查看伺服器的屬性就可以看到是建立在Linux上了

整個安裝下來比安裝本機的SQL Server快太多了,而且還可以隨時建立與刪除,使用docker來建立一些測試環境是滿不錯用的,是一項值得投資的工具

參考資料

Docker Documentation
Docker Hub
Docker-從入門到實踐