我正在尝试根据Dockerfile构建和运行docker。
代码是(在我克隆我的git仓库等之前):
sh 'docker build -t myimage .'
sh 'docker run myimage'
Dockerfile如下:
FROM node:12.2.0-alpine AS build
COPY . /frontend
WORKDIR /src
CMD apt-get update
CMD gradle build
docker build命令似乎是成功的,结果:
Successfully built 0329878899fc
Successfully tagged myimage:latest
但是当执行docker run命令时,它说:
+ docker run myimage
/bin/sh: gradle: not found
ERROR: script returned exit code 127
我试图删除CMD gradle
,只保留CMD apt-get update
,但它说apt-get not found.
如果我用RUN
替换CMD
,那么docker构建
Apt将不可用,因为您使用的是使用Apk包管理器的alpine Linux容器。
似乎默认情况下节点映像不包含Gradle,所以你必须使用RUN命令安装它。
您可以通过apt切换到基于debian的映像,或者通过搜索用于Alpine linux的Gradle包来完成此操作