DEV Community

Cover image for Hướng dẫn chạy MSSQL Server trên Windows 10 với Docker
Nguyễn Công Trọng
Nguyễn Công Trọng

Posted on • Originally published at trongnc.com

Hướng dẫn chạy MSSQL Server trên Windows 10 với Docker

Với sinh viên IT, SQL Server là công cụ không thể thiếu trong quá trình học tập. Nhưng việc cài đặt mất rất nhiều thời gian mà còn dễ xảy ra lỗi, với Docker trên Windows 10, ta có thể chạy MS SQL Server 2016 Developer với chỉ... 1 dòng lệnh.

Lưu ý: Microsoft SQL Server Developer chỉ nên được dùng để DEV hay TEST, không khuyến khích sử dùng trong môi trường thực tế.
Nếu muốn sử dụng cho sản phẩm thực tế, hãy dùng image Microsoft SQL Server

1. Cài đặt Docker

Trước khi đến với bài viết, vui lòng cài đặt Docker cho Windows 10.

2. Switch to Windows containers...

MS SQL Server 2016 Developer được xây dựng cho Windows container, cho nên ta phải chuyển loại containers của Docker sang Windows container.
Mở Docker, sau đó click chuột phải vào biểu tượng Docker ở dưới System Tray (góc dưới bên phải của màn hình).

  • Nếu thấy menu Switch to Linux containers... thì chuyển qua bước 3.
  • Nếu thấy menu Switch to Windows containers... thì click để chuyển sang loại container của Windows.

Nếu gặp lỗi Containers feature is disabled. Enable it using the PowerShell script. thì mở Windows PowerShell với quyền Administrator lên và chạy lệnh Enable-WindowsOptionalFeature -Online -FeatureName $("Microsoft-Hyper-V", "Containers") -All sau đó khởi động lại máy là được.

3. Chạy MS SQL Server Developer

docker run -d -p 1433:1433 -e sa_password=<SA_PASSWORD> -e ACCEPT_EULA=Y microsoft/mssql-server-windows-developer
Enter fullscreen mode Exit fullscreen mode
  • Mặc định SQL Server được cài đặt với tên người dùng (username) để đăng nhập là sa (viết tắt của cụm từ "system administrator") là quyền cao cấp nhất của SQL Server, ta đặt password của user này qua tham số sa_password
  • SA_PASSWORD phải đặt phức tạp tý (không phải 1, hay 123 hay 123456, nếu không SQL Server sẽ từ chối xác thực đăng nhập.
  • ACCEPT_EULA là điều khoản sử dụng, chấp thuận bằng giá trị Y.

Quá trình chạy trong lần đầu sẽ mất rất nhiều thời gian tùy vào tốc độ mạng của bạn.

4. Chạy lại container cũ như thế nào?

Khi bạn khởi động lại máy hay mở lại Docker thì làm sao để mở lại container cũ để tiếp tục sử dụng để tránh việc mất đi dữ liệu?

Xem tất cả các container đang có bằng lệnh docker ps -a

C:\Users\TRONG>docker ps -a
CONTAINER ID   IMAGE                                      COMMAND                  CREATED       STATUS                            PORTS     NAMES
fadc83e27488   microsoft/mssql-server-windows-developer   "powershell -Command…"   4 hours ago   Exited (1073807364) 3 hours ago             ecstatic_johnson
Enter fullscreen mode Exit fullscreen mode

Ở đây ta thấy CONTAINER ID: fadc83e27488 có trạng thái là Exited, để chạy lại container này, ta sử dụng lệnh docker start <CONTAINER ID>

C:\Users\TRONG>docker start fadc83e27488
fadc83e27488
Enter fullscreen mode Exit fullscreen mode

Vậy là xong. Hãy để lại ý kiến của bạn trong phần bình luận nhé.

Tham khảo:
https://hub.docker.com/r/microsoft/mssql-server-windows-developer/
https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-10

Top comments (0)