Bạn có thể thực hiện điều đó bằng cách sử dụng Gỡ lỗi từ xa Python. Mở cửa sổ cấu hình và click vào + -> Python từ xa gỡ lỗi
Sau đó, bạn hoặc thiết lập một cổng hoặc giữ nó trống cho Pycharm để tìm một cổng có sẵn.
Sau đó bấm vào biểu tượng Debug để khởi động máy chủ debug sẽ hiển thị bên dưới loại thông điệp
Starting debug server at port 57588
Use the following code to connect to the debugger:
import pydevd
pydevd.settrace('localhost', port=57588, stdoutToServer=True, stderrToServer=True)
Waiting for process connection...
Bây giờ bạn cần phải thiết lập PyDev gỡ lỗi bên Docker. Bạn sẽ cần số pycharm-debug-py3k.egg
cho việc này. Đối với tôi, tôi sao chép vào thư mục Dockerfile hiện tại của tôi như dưới đây
cp "/Users/tarun.lalwani/Library/Application Support/IntelliJIdea2017.2/python/pycharm-debug-py3k.egg" .
Các vị trí cho bạn sẽ thay đổi dựa trên phiên bản IntelliJ cài đặt. Sau đó, chúng ta cần phải sửa Dockerfile của chúng tôi
FROM python:3.6
WORKDIR /app
ENV PYTHONPATH=/app:/app/debug
COPY pycharm-debug-py3k.egg /app/debug
COPY debug_test.py /app/
CMD python debug_test.py
Các debug_test.py
khi xây dựng sẽ phải bên dưới dòng ở đầu
import pydevd
pydevd.settrace('docker.for.mac.localhost', port=55507, stdoutToServer=True, stderrToServer=True)
Lưu ý: Tôi đã sử dụng docker.for.mac.localhost
như tôi sử dụng Docker cho mac, nhưng nếu sử dụng Docker cho windows thì sử dụng docker.for.win.localhost
. Đối với hộp công cụ hoặc linux, bạn sẽ thêm IP của máy của mình
Vì nó là docker, chúng tôi có thể muốn cố định cổng thay vì động như tôi đã làm. Bây giờ chúng ta xây dựng tệp docker và chạy nó.
này sẽ mở ra một cửa sổ bật lên trong pycharm, nhấp autodetect để phát hiện ánh xạ nguồn
Và sau đó bạn sẽ có mã của bạn breakpointed tại dòng chính của tập tin của bạn
Bạn đang sử dụng hệ điều hành chủ nào? –
Windows là hệ điều hành của tôi, vùng chứa là Linux – red888