使用基于 docker-compose 的解释器打开 pycharm 控制台时出错

问题描述 投票:0回答:1

使用 PyCharm 2024.2.1

系统:MacOS(苹果芯片)

此外,使用 Orbstack for Docker

并使用基于 Docker Compose 的 Python 3.12 解释器

撰写文件

app:
  container_name: app
  build:
    context: .
    dockerfile: ./docker/Dockerfilebase
  restart: unless-stopped
  command: "python plato/manage.py runserver 0.0.0.0:8000"
  env_file:
    - .env
  ports:
    - "8000:8000"
  expose:
    - 8000
  depends_on:
    - db
    - redis
    - rabbit

这是我的 django 容器,如果我运行它,它运行完美,还可以运行 pytest 和其他东西,

但是在启动容器后,当我尝试打开 python 控制台时,出现此错误

如果降级到 pycharm 2023.2,这对我有用,但不适用于此版本

Error response from daemon: 
driver failed programming external connectivity on endpoint app-run-a63f7b432235 (9b6cd54f64c7e3cdbbaf044aca0b51389ec347048875031f373b624fdf2c09ca): 
Bind for 0.0.0.0:8000 failed: port is already allocated
Couldn't connect to console process.

我想运行我的控制台,还要确保我的应用程序容器已启动并正在运行,如果应用程序容器未启动,则控制台可以工作,否则会抛出上述错误。

python docker docker-compose pycharm
1个回答
0
投票

作为临时解决方案,我创建了另一个类似于

app
的服务,但不公开任何端口

  console:
    container_name: console
    build:
      context: .
      dockerfile: ./docker/Dockerfilebase
    restart: unless-stopped
    env_file:
      - .env
    depends_on:
      - db
      - redis
      - rabbit

并将我的项目解释器设置为 docker-compose -> 选择服务控制台

© www.soinside.com 2019 - 2024. All rights reserved.