2016-09-03 14 views
11

Tôi có docker-compose.yml tập tin sau đây:Debugging dàn máy chủ soạn Docker với pycharm

version: '2' 
services: 
    postgis: 
     image: mdillon/postgis 
     environment: 
      POSTGRES_USER: ${POSTGIS_ENV_POSTGRES_USER} 
      POSTGRES_PASSWORD: ${POSTGIS_ENV_POSTGRES_PASSWORD} 
      POSTGRES_DB: ${POSTGIS_ENV_POSTGRES_DB} 
     volumes: 
      - /nexchange/database:/var/lib/postgresql/data 
     restart: always 
    app: 
     image: onitsoft/nexchange:${DOCKER_IMAGE_TAG} 
     volumes: 
      - /nexchange/mediafiles:/usr/share/nginx/html/media 
      - /nexchange/staticfiles:/usr/share/nginx/html/static 
     links: 
      - postgis 
     restart: always 
    web: 
     image: onitsoft/nginx 
     volumes: 
      - /nexchange/etc/letsencrypt:/etc/letsencrypt 
      - /nexchange/etc/nginx/ssl:/etc/nginx/ssl 
      - /nexchange/etc/nginx/nginx.conf:/etc/nginx/nginx.conf 
      - /nexchange/mediafiles:/usr/share/nginx/html/media 
      - /nexchange/staticfiles:/usr/share/nginx/html/static 
     ports: 
      - "80:80" 
      - "443:443"    
     links: 
      - app 
     restart: always 

Đối với một số lý do, một số chức năng mà làm việc trên thùng sơn địa phương không làm việc trên dàn. Tôi muốn cấu hình remote interpreter trong pycharm để dàn dựng, tuy nhiên có vẻ như thiết lập này hiện không được hỗ trợ.

Tôi đang sử dụng wercker + docker compose và IDE của tôi là pycharm.

EDIT: Câu hỏi đặt ra là: Làm thế nào để thiết lập Pycharm debugger để chạy trên một máy chủ chạy Docker xa soạn

+0

Đây có phải là vấn đề tích hợp giữa IDE của bạn và ứng dụng triển khai bằng cách sử dụng docker soạn? –

+0

Thay vì một tính năng còn thiếu trong PyCharm không cho phép sử dụng cả SSH Tunnel + Docker API –

+0

Bạn có thể làm rõ những gì bạn đang yêu cầu không? –

Trả lời

5

Các giải pháp, tuy nhiên không an toàn, mở cửa API Docker trên mục tiêu từ xa để giao thông công cộng qua iptables (có thể chỉ lưu lượng truy cập từ IP cụ thể, nếu bạn sở hữu một IP tĩnh).

$ ssh [email protected] 
[email protected]:~# sudo iptables -A INPUT -p tcp --dport 2376 -j ACCEPT 
[email protected]:~# sudo /etc/init.d/iptables restart 

Và sau đó chỉ cần sử dụng tính năng soạn Docker của JetBrain PyCharm/PhpStrom hoặc bạn lựa chọn yêu thích:

enter image description here

Cheers

Các vấn đề liên quan