MacOS Big Sur下docker build .无反馈无限挂起问题求助
Docker build无限挂起问题排查
针对你执行docker build .时无反馈挂起的问题,结合提供的配置文件,可从以下方向排查修复:
1. 修复虚拟环境创建命令
你的Dockerfile中创建虚拟环境的命令存在参数错误:
RUN python -n venv /py && \
正确的Python虚拟环境创建命令是通过-m参数调用venv模块,修正为:
RUN python -m venv /py && \
-n并非创建虚拟环境的有效参数,错误参数会导致命令执行异常,进而引发构建卡住。
2. 补充Alpine镜像系统依赖
Alpine是轻量级镜像,默认缺少编译Python包所需的基础工具(如gcc、musl-dev),安装Django时可能因编译环节卡住。需在安装requirements前添加依赖安装步骤:
RUN apk add --no-cache gcc musl-dev && \ python -m venv /py && \ /py/bin/pip install --upgrade pip && \ /py/bin/pip install -r /tmp/requirements.txt && \ rm -rf /tmp && \ adduser \ --disabled-password \ --no-create-home \ django-user
3. 排查网络相关问题
- 先手动拉取基础镜像,避免构建时因拉取镜像卡住:
docker pull python:3.9-alpine3.13 - 若pip安装包时网络缓慢,可添加国内镜像源加速,修改pip安装命令:
/py/bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r /tmp/requirements.txt && \
4. 验证COPY路径正确性
确认执行docker build的当前目录下,确实存在app文件夹且包含项目文件,避免COPY ./app /app因路径错误导致后续步骤异常。
内容的提问来源于stack exchange,提问作者user1869935
相关产品推荐
相关产品推荐

