首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >/bin/sh: 1: apk:未找到,构建镜像docker时

/bin/sh: 1: apk:未找到,构建镜像docker时
EN

Stack Overflow用户
提问于 2021-08-18 16:34:49
回答 1查看 1.4K关注 0票数 0

我尝试使用docker创建并运行一个djanog镜像,以便将其与kubernetes一起部署,但当我运行镜像构建命令时,它给出错误"/bin/sh: 1: apk: not found“

Dockerfile:

代码语言:javascript
运行
复制
FROM python:3.8-slim
LABEL maintainer="r.ofc@hotmail.com"

ENV PROJECT_ROOT /app
WORKDIR $PROJECT_ROOT

RUN apk update \
    && apk add mariadb-dev \
        gcc\
        python3-dev \
        pango-dev \
        cairo-dev \
        libtool \
        linux-headers \
        musl-dev \
        libffi-dev \
        openssl-dev \
        jpeg-dev \
        zlib-dev
        
RUN pip install --upgrade pip
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY . .

CMD python manage.py runserver 0.0.0.0:8000

有人能帮我吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-18 16:52:15

python:3.8-slim是基于Debian的,Debian使用的是apt包管理器,而不是apk。

您可以更改镜像版本:

代码语言:javascript
运行
复制
FROM python:3.8-alpine

它应该工作得很好。

另一种解决方案是保留python:3.8-slim镜像,但切换到apt:

代码语言:javascript
运行
复制
RUN apt update \
    && apt install -y libmariadb-dev \
        gcc\
        python3-dev \
        libcogl-pango-dev \
        libcairo2-dev \
        libtool \
        linux-headers-amd64 \
        musl-dev \
        libffi-dev \
        libssl-dev \
        libjpeg-dev \
        zlib1g-dev

我已经更新了包名,因为它们在Debian中是不同的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68836177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档