地址已在使用(错误号98)Django,vscode和d

2024-04-19 07:41:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带有django的python应用程序,我正在docker容器中运行它。我需要调试这个应用程序,每次我做docker合成它会给出下面的错误。我查看了几个关于如何调试的网站,但没有一个解决方案对我有帮助。有人知道会是什么吗?我认为最重要的文件,你评估如下,如果有任何需要我编辑的帖子。 我使用的是django 2.0.1、ptvsd3.2.1和Docker工具箱。在

File "manage.py", line 10, in <module>    ptvsd.enable_attach(secret='my_secret', address = ('192.168.99.100', 3000))
File "/usr/local/lib/python3.6/site-packages/ptvsd/__init__.py", line 87, in enable_attach
return _attach_server().enable_attach(secret, address, certfile, keyfile, redirect_output)
File "/usr/local/lib/python3.6/site-packages/ptvsd/attach_server.py", line 109, in enable_attach
server.bind(address)
OSError: [Errno 99] Cannot assign requested addres

s

在管理.py公司名称:

^{pr2}$

码头工人-合成.yml公司名称:

version: '3'
services:
  db:
    image: postgres
  backend:
    build: .
    command: bash app.sh
    volumes:
      - .:/code
    ports:
      - "3000:3000"
      - "8000:8000"
    depends_on:
      - db
  frontend:
    build: ./chatire-frontend
    command: bash front.sh
    volumes:
      - ./chatire-frontend:/to-do-app
    ports:
      - "8080:8080"
      - "8081:8081"
  rabbit1:
    image: "rabbitmq:3-management"
    hostname: "rabbit1"
    environment:
      RABBITMQ_ERLANG_COOKIE: "SWQOKODSQALRPCLNMEQG"
      RABBITMQ_DEFAULT_USER: "guest"
      RABBITMQ_DEFAULT_PASS: "guest"
      RABBITMQ_DEFAULT_VHOST: "/"
    ports:
      - "15672:15672"
      - "5672:5672"
    labels:
      NAME: "rabbitmq1"
    volumes:
      - "./rabbitmq-compose/enabled_plugins:/etc/rabbitmq/enabled_plugins"
      #- "./rabbitmq.config:/etc/rabbitmq/rabbitmq.config:ro"
      #- "./autocluster-0.4.1.ez:/usr/lib/rabbitmq/lib/rabbitmq_server-3.5.5/plugins/autocluster-0.4.1.ez"

Dockerfile文件

FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/
EXPOSE 3000

在要求.txt公司名称:

amqp==2.2.2
billiard==3.5.0.3
celery==4.1.0
Django==2.0.1
django-cors-headers==2.1.0
django-notifs==2.6.0
django-templated-mail==1.0.0
djangorestframework==3.7.7
djangorestframework-jwt==1.11.0
djoser==1.1.5
gevent==1.2.2
greenlet==0.4.12
kombu==4.1.0
pika==0.11.2
PyJWT==1.6.1
pytz==2017.3
simplejson==3.13.2
six==1.11.0
uWSGI==2.0.15
vine==1.1.4
psycopg2==2.7.4
psycopg2-binary==2.7.4
ptvsd==3.2.1 

Tags: djangoinpysecretserveraddressenablelib
1条回答
网友
1楼 · 发布于 2024-04-19 07:41:27

根据quinox在Github上的回答(https://github.com/Microsoft/PTVS/issues/1057#issuecomment-421549892):

要使用自动重新加载功能,您可以使VSCode只在主进程中附加。基于Django的utils/自动加载.py以及Django扩展的管理/commands/runserver_加.py公司名称:

if os.environ.get('RUN_MAIN') or os.environ.get('WERKZEUG_RUN_MAIN'): ptvsd.enable_attach(address=('0.0.0.0', 7913), redirect_output=True)

相关问题 更多 >