【问题标题】:Cannot create deno docker image无法创建 deno docker 镜像
【发布时间】:2020-08-30 18:41:04
【问题描述】:

我想使用 Dockerfile 创建deno docker 镜像

FROM alpine:latest

WORKDIR /

RUN apk update && \
    apk upgrade

RUN apk add curl

RUN curl -fsSL https://deno.land/x/install/install.sh | sh

ENV DENO_INSTALL="/root/.deno"

ENV PATH="${DENO_INSTALL}/bin:${PATH}"

RUN deno --help

但是当运行docker build -t deno . 时,它最后显示/bin/sh: deno: not found

完整输出:

Sending build context to Docker daemon  54.78kB
Step 1/8 : FROM alpine:latest
 ---> f70734b6a266
Step 2/8 : WORKDIR /
 ---> Using cache
 ---> b1bbfa810906
Step 3/8 : RUN apk update &&     apk upgrade
 ---> Using cache
 ---> a7761425faba
Step 4/8 : RUN apk add curl
 ---> Using cache
 ---> 9099d4f65cb1
Step 5/8 : RUN curl -fsSL https://deno.land/x/install/install.sh | sh
 ---> Using cache
 ---> b4ea95c69a73
Step 6/8 : ENV DENO_INSTALL="/root/.deno"
 ---> Using cache
 ---> bdc7e1e85e9c
Step 7/8 : ENV PATH="${DENO_INSTALL}/bin:${PATH}"
 ---> Using cache
 ---> d35db1caba71
Step 8/8 : RUN deno --help
 ---> Running in d1ca4e1d0dc6
/bin/sh: deno: not found
The command '/bin/sh -c deno --help' returned a non-zero code: 127

【问题讨论】:

    标签: docker deno


    【解决方案1】:

    Alpine 缺少 glibc,这是 deno 运行所必需的。

    您可以改用frolvlad/alpine-glibc:alpine-3.11_glibc-2.31,它会正常工作。

    FROM frolvlad/alpine-glibc:alpine-3.11_glibc-2.31
    
    WORKDIR /
    
    RUN apk update && \
        apk upgrade
    
    RUN apk add curl
    
    RUN curl -fsSL https://deno.land/x/install/install.sh | sh
    
    ENV DENO_INSTALL="/root/.deno"
    
    ENV PATH="${DENO_INSTALL}/bin:${PATH}"
    
    RUN deno --help
    

    我建议构建一个特定的deno 版本,为此,您应该使用:

    curl -fsSL https://deno.land/x/install/install.sh | sh -s v1.0.0
    
    FROM frolvlad/alpine-glibc:alpine-3.11_glibc-2.31
    
    ENV DENO_VERSION=1.0.0
    
    # ...
    
    RUN curl -fsSL https://deno.land/x/install/install.sh | sh -s v${DENO_VERSION}
    
    # ...
    

    您也可以查看deno-docker

    【讨论】:

      猜你喜欢
      • 2017-09-15
      • 2020-12-23
      • 1970-01-01
      • 2022-12-11
      • 2019-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-15
      相关资源
      最近更新 更多