Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.
Cách gỡ lỗi ứng dụng Python trong Docker Container bằng VS Code
Khi phát triển ứng dụng Python trong môi trường Docker, việc gỡ lỗi hiệu quả là một yếu tố quan trọng giúp tiết kiệm thời gian và tối ưu hóa mã nguồn. Với sự hỗ trợ mạnh mẽ từ VS Code và khả năng tích hợp với Docker, bạn hoàn toàn có thể thực hiện gỡ lỗi các ứng dụng Python bên trong Docker Container một cách dễ dàng. Bài viết này sẽ hướng dẫn bạn từng bước cách thiết lập trình gỡ lỗi trong VS Code để giúp bạn xử lý các vấn đề trong mã nguồn Python một cách nhanh chóng và chính xác.
Cách sử dụng debugger trong VS Code để gỡ lỗi bằng Python bên trong Docker Container.
Bước 1: Thêm thư viện debugpy
Trước tiên, ta cần cài đặt debugpy
, đây là một thư viện do Microsoft phát triển, hỗ trợ giao thức gỡ lỗi cho Python.
Cài đặt bằng lệnh sau:
pip install debugpy
Sau đó, thêm đoạn mã này vào đầu mã nguồn của bạn:
Bài viết này được đăng tại [free tuts .net]
import debugpy debugpy.listen(("0.0.0.0", 5678))
Ngoài ra, bạn có thể thêm các dòng mã dưới đây để đợi cho đến khi VS Code được kết nối trước khi bắt đầu chạy mã:
print("Waiting for client to attach...") debugpy.wait_for_client()
Bước 2: Chạy container
Sau khi cấu hình xong mã, chạy container và mở cổng 5678
để kết nối gỡ lỗi từ bên ngoài:
docker run -p 5678:5678 your_image
Nếu bạn sử dụng docker-compose
, hãy thêm cấu hình cổng trong docker-compose.yml
:
services: app: ... ports: - 5678:5678 ...
Bước 3: Mở VS Code và kết nối Debugger
Trong VS Code, chọn Run -> Add Configuration -> Remote Attach, rồi giữ cấu hình mặc định với localhost
và cổng 5678
.
Điều này sẽ tạo ra tệp launch.json
trong thư mục .vscode
, chứa thông tin để debugger kết nối với cổng 5678
, nơi máy chủ gỡ lỗi đang chạy từ xa:
{ "version": "0.2.0", "configurations": [ { "name": "Python: Remote Attach", "type": "python", "request": "attach", "connect": { "host": "localhost", "port": 5678 }, "pathMappings": [ { "localRoot": "${workspaceFolder}", "remoteRoot": "." } ], "justMyCode": true } ] }
Bây giờ, bạn có thể đặt các điểm ngắt (breakpoints), rồi chọn Run -> Start Debugging để bắt đầu phiên gỡ lỗi.
Lưu ý: Cách này có thể áp dụng khi chạy VS Code trên máy chủ, hoặc kết nối VS Code trực tiếp vào container để gỡ lỗi ngay bên trong. Chúc bạn gỡ lỗi thành công!
Kết bài
Qua các bước trên, bạn đã có thể thiết lập môi trường gỡ lỗi cho ứng dụng Python chạy trong Docker Container với VS Code một cách dễ dàng. Điều này giúp quá trình phát triển và sửa lỗi trở nên hiệu quả hơn, đồng thời tăng cường khả năng kiểm tra mã nguồn và tìm ra vấn đề ngay trong lúc ứng dụng đang chạy. Hy vọng với hướng dẫn này, bạn sẽ tự tin hơn khi làm việc với Docker và VS Code để phát triển các ứng dụng Python mạnh mẽ và ổn định.