You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Compose构建报错‘no such process’问题排查求助

Docker构建报错排查:open requirements.txt: no such process

问题背景

我的服务目录结构如下:

docker-compose.yml
service/
  -Dockerfile
  -requirements.txt
  -api/

执行docker-compose build --no-cache构建镜像时,出现如下错误:

failed to build: failed to copy files: failed to copy directory: Error processing tar file(exit status 1): open requirements.txt: no such process

移除requirements.txt后,其他文件也会报相同错误,以下是我的配置文件:

Dockerfile

FROM python:3.7-buster

ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

WORKDIR /api

RUN pip install --upgrade pip
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

COPY . .

docker-compose.yml

version: "3.5"
services:
  firebase:
    build: ./service
    command: sh -c "gunicorn -w 5 --bind 0.0.0.0:8000 app:app"
    restart: on-failure
    ports:
      - "8088:8000"
    networks:
      - static-network

networks:
  static-network:
    driver: bridge

排查与解决

这个错误的核心是Docker在打包构建上下文时无法读取目标文件,按以下步骤逐一排查:

  • 检查文件权限
    确认当前执行构建的用户对service/目录下的所有文件有读取权限,执行以下命令修复权限:

    chmod -R 755 service/  # 给目录加读写执行权限
    chmod -R 644 service/*  # 给文件加读写权限
    
  • 确认构建上下文路径
    必须在包含docker-compose.yml的根目录下执行docker-compose build,不要进入service/目录运行命令。同时检查项目根目录是否存在.dockerignore文件,若有,确保没有误排除requirements.txt或service/目录。

  • 释放文件占用
    检查requirements.txt等文件是否被编辑器、杀毒软件或其他进程锁定,关闭相关程序后重新尝试构建。

  • 重置Docker服务
    若以上方法无效,尝试重启Docker服务并清理缓存:

    # Linux系统
    systemctl restart docker
    docker system prune -a
    
    # Windows/macOS
    # 在Docker桌面应用中点击重启按钮,然后执行清理命令
    docker system prune -a
    

内容的提问来源于stack exchange,提问作者Ilya Berezenko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 18:45:20