如何通过查找纱线来修复Docker容器中的错误?

时间:2020-07-04 04:48:55

标签: docker dockerfile yarnpkg

我正在尝试设置0x Launch Kit前端(https://github.com/0xProject/0x-launch-kit-frontend)。我已将其构建到带有Dockerfile的Docker容器中:https://github.com/0xProject/0x-launch-kit-frontend/blob/development/Dockerfile。尝试执行应从本地Docker映像运行容器的命令docker run image:name yarn build时,出现错误docker-entrypoint.sh: exec: line 32: yarn: not found 。为什么会这样,我该如何解决?似乎在这一部分的Dockerfile中安装了yarn(

RUN apk update && \
apk upgrade && \
apk add --no-cache --virtual build-dependencies bash git openssh python make g++ && \
yarn --no-cache || \
apk del build-dependencies && \
yarn cache clean

此外,这是docker-entrypoint.sh文件的代码:

    #!/usr/bin/env sh
    # vim:sw=4:ts=4:et
    set -e
    if [ "$1" = "nginx" -o "$1" = "nginx-debug" ]; then
         if /usr/bin/find "/docker-entrypoint.d/" -mindepth 1 -maxdepth 1 -type f -print - 
           quit 2>/dev/null | read v; then
          echo "$0: /docker-entrypoint.d/ is not empty, will attempt to perform configuration"
          echo "$0: Looking for shell scripts in /docker-entrypoint.d/"
          find "/docker-entrypoint.d/" -follow -type f -print | sort -n | while read -r f; do
              case "$f" in
                   *.sh)
                   if [ -x "$f" ]; then
                       echo "$0: Launching $f";
                       "$f"
                   else
                       # warn on shell scripts without exec bit
                       echo "$0: Ignoring $f, not executable";
                   fi
                   ;;
               *) echo "$0: Ignoring $f";;
            esac
         done
    echo "$0: Configuration complete; ready for start up"
    else
        echo "$0: No files found in /docker-entrypoint.d/, skipping configuration"
    fi
    fi
    exec "$@"

0 个答案:

没有答案