2017-09-20 1 views
1

Je fais une flapp webapp avec docker, je suis à la recherche d'un moyen d'activer le débogage pycharm, jusqu'à présent je suis capable de déployer l'application en utilisant le docker intégré, l'application est automatiquement courais en raison des configs dockerfile utilisant supervisordDébogage à distance Python avec docker

Lorsque je connecte mon interpretor à distance je reçois l'habituel:

* Running on http://0.0.0.0:80/ (Press CTRL+C to quit) 
* Restarting with stat 
* Debugger is active! 
* Debugger PIN: 579-233-679 

Mais le poste que je Perform est clairement ne va pas que comme je l'ai interpretor marqué tous les routes à être des points de rupture, je reçois toujours les résultats originaux de la webapp et aucun des points de rupture ne fait rien.

Je suppose que je vous pose la question:

  • Vais-je sur ce dans le mauvais sens? (devrais-je juste utiliser une machine virtuelle, déboguer à distance dessus et ensuite conteneuriser la machine virtuelle plus tard)
  • Est-ce que j'essaye de faire même possible?
  • Devrais-je simplement déboguer manuellement tout si j'utilise cette méthode de développement?

Répondre

1

Mise à jour:

le moyen d'activer correctement le mode de débogage pour docker est de créer un docker-compose.yml, cela indique PyCharm ce qu'il faut faire quand vous lui donnez un interprète docker-Compose, de cette façon vous peut accrocher sur un service, mon yml ressemble à:

version: '3.0' 

services: 
    web: 
    build: . 
    command: python3 app/main.py 
    volumes: 
     - .:/app 
    ports: 
     - "80:80" 
     - "22" 

le fichier yml n'est pas généré, vous le faites vous-même.

Cela permet au port que j'ai flacon mis à aller à 80 et permet le débogueur de se connecter en utilisant le port 22,

je suivais https://blog.jetbrains.com/pycharm/2017/03/docker-compose-getting-flask-up-and-running/ assez près. (Si quelqu'un trébuche sur cela et a besoin d'un coup de main, puis commenter, je vais voir si je peux aider)