Ubuntu下PyCharm配置Docker Compose解释器报错求助
问题
在Ubuntu系统的PyCharm 2022.3.3(专业版)中搭建Django项目,配置Docker Compose解释器(对应官方文档第6步)时出现如下错误:
Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "Creating djanog_web_run ... ": executable file not found in $PATH: unknown
已确认docker-compose up命令可正常运行程序,相关配置文件如下:
Docker Compose 文件
version: "3.9" services: db: image: postgres volumes: - ./data/db:/var/lib/postgresql/data environment: - POSTGRES_DB=postgres - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: - .:/code ports: - "8000:8000" environment: - POSTGRES_NAME=postgres - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres depends_on: - db
Dockerfile 文件
# syntax=docker/dockerfile:1 FROM python:3 ENV PYTHONDONTWRITEBYTECODE=1 ENV PYTHONUNBUFFERED=1 WORKDIR /code COPY requirements.txt /code/ RUN pip install -r requirements.txt COPY . /code/
已按步骤指定配置文件、服务及环境变量,需明确该报错原因及解决方法。
原因分析
该错误源于PyCharm配置Docker Compose解释器时,误将容器启动阶段的日志输出内容(Creating djanog_web_run ...)识别为要执行的容器启动命令。由于该内容并非系统可执行文件,自然无法在$PATH中找到,从而触发启动失败。
解决方法
- 修正解释器配置的命令字段:在PyCharm的Docker Compose解释器配置界面,确保「Command」字段留空,或仅填入容器内合法的可执行命令(如
python)。PyCharm会自动读取Compose文件中定义的command参数启动容器,无需额外指定自定义命令。 - 重新配置Docker Compose解释器:
- 打开
File > Settings > Project: [项目名称] > Python Interpreter - 点击右上角齿轮图标,选择
Add - 切换到
Docker Compose选项卡 - 指定正确的
docker-compose.yml文件路径,选择web服务 - 确认「Command」字段为空后,保存配置
- 打开
- 清理Docker残留资源:执行
docker-compose down命令清理之前创建的错误容器及相关资源,再重新尝试配置解释器。
内容的提问来源于stack exchange,提问作者Nori
相关产品推荐
相关产品推荐

