Prohoster > Blog > quản lý > Phát triển với Docker trên Hệ thống con Windows cho Linux (WSL)
Phát triển với Docker trên Hệ thống con Windows cho Linux (WSL)
Để hoạt động hoàn toàn với dự án Docker trong WSL, bạn phải cài đặt WSL 2. Tại thời điểm viết bài, bạn chỉ có thể sử dụng nó khi tham gia chương trình Windows Insider (WSL 2 có sẵn trong các bản dựng 18932 trở lên). Điều đáng nói riêng là cần có phiên bản Windows 10 Pro để cài đặt và định cấu hình Docker Desktop.
Các bước đầu tiên
Sau khi tham gia chương trình Người dùng nội bộ và cài đặt các bản cập nhật, bạn cần cài đặt bản phân phối Linux (trong ví dụ này là Ubuntu 18.04) và Docker Desktop với WSL 2 Tech Preview:
Sau đó, chúng tôi cần đảm bảo rằng chúng tôi sẽ sử dụng WSL v2. Để thực hiện việc này, trong thiết bị đầu cuối WSL hoặc PowerShell, hãy chạy các lệnh sau:
wsl -l -v - xem phiên bản nào hiện đang được cài đặt. Nếu là 1 thì chúng ta sẽ di chuyển xuống dưới danh sách
wsl --set-version ubuntu 18.04 2 - để cập nhật lên phiên bản 2
wsl -s ubuntu 18.04 — cài đặt Ubuntu 18.04 làm bản phân phối mặc định
Bây giờ bạn có thể khởi động Ubuntu 18.04 và định cấu hình nó (chỉ định tên người dùng và mật khẩu của bạn).
Cài đặt Docker máy tính để bàn
Thực hiện theo các hướng dẫn trong quá trình cài đặt. Máy tính sẽ yêu cầu khởi động lại sau khi cài đặt và trong lần khởi động đầu tiên để bật Hyper-V (cần hỗ trợ Windows 10 Pro).
Quan trọng! Nếu Docker Desktop báo cáo bị tường lửa chặn, hãy đi tới cài đặt chống vi-rút và thực hiện các thay đổi sau đối với quy tắc tường lửa (trong ví dụ này, Kaspersky Total Security được sử dụng làm phần mềm chống vi-rút):
Đi tới Cài đặt -> Bảo mật -> Tường lửa -> Định cấu hình quy tắc gói -> Dịch vụ cục bộ (TCP) -> Chỉnh sửa
Xóa cổng 445 khỏi danh sách cổng cục bộ
Tiết kiệm
Sau khi khởi động Docker Desktop, chọn WSL 2 Tech Preview từ menu ngữ cảnh của nó.
Trong cửa sổ mở ra, nhấp vào nút Bắt đầu.
Docker và docker-compose hiện có sẵn trong bản phân phối WSL.
Quan trọng! Docker Desktop được cập nhật hiện có một tab với WSL bên trong cửa sổ cài đặt. Hỗ trợ WSL được kích hoạt ở đó.
Quan trọng! Ngoài hộp kiểm kích hoạt WSL, bạn cũng cần kích hoạt bản phân phối WSL của mình trong tab Tài nguyên->Tích hợp WSL.
Ra mắt
Điều không mong đợi là nhiều vấn đề nảy sinh khi cố gắng nâng các vùng chứa dự án nằm trong thư mục người dùng Windows.
Các loại lỗi khác nhau liên quan đến việc khởi chạy tập lệnh bash (thường bắt đầu khi xây dựng các thùng chứa để cài đặt các thư viện và bản phân phối cần thiết) và những lỗi phổ biến khác để phát triển trên Linux khiến chúng tôi nghĩ đến việc đặt các dự án trực tiếp vào thư mục người dùng của Ubuntu 18.04.
.
Từ giải pháp cho vấn đề trước đó, như sau: cách làm việc với các tệp dự án thông qua IDE được cài đặt trên Windows. Là một “cách thực hành tốt nhất”, tôi chỉ tìm thấy một lựa chọn duy nhất cho mình - làm việc thông qua VSCode (mặc dù tôi là người hâm mộ PhpStorm).
Sau khi cài đặt tiện ích mở rộng được đề cập ở trên, chỉ cần chạy lệnh code . trong thư mục dự án khi VSCode đang chạy.
Trong ví dụ này, nginx được yêu cầu để truy cập các vùng chứa thông qua trình duyệt. Cài đặt nó qua sudo apt-get install nginx Hóa ra không đơn giản như vậy. Đầu tiên, chúng tôi cần cập nhật bản phân phối WSL bằng cách chạy sudo apt update && sudo apt dist-upgradevà chỉ sau đó mới bắt đầu cài đặt nginx.
Quan trọng! Tất cả các miền cục bộ đều được đăng ký không phải trong tệp /etc/hosts của bản phân phối Linux (thậm chí nó còn không có ở đó) mà trong tệp máy chủ (thường nằm ở C:WindowsSystem32driversetchosts) của Windows 10.
nguồn
Bạn có thể tìm thấy mô tả chi tiết hơn về từng bước tại đây: