下面是我的Dockerfile:
FROM golang:1.17.5 as builder
WORKDIR /go/src/github.com/cnosdb/cnosdb
COPY . /go/src/github.com/cnosdb/cnosdb
RUN go env -w GOPROXY=https://goproxy.cn,direct
RUN go env -w GO111MODULE=on
RUN go install ./...
FROM debian:stretch
COPY --from=builder /go/bin/cnosdb /go/bin/cnosdb-cli /usr/bin/
COPY --from=builder /go/src/github.com/cnosdb/cnosdb/etc/cnosdb.sample.toml /etc/cnosdb/cnosdb.conf
EXPOSE 8086
VOLUME /var/lib/cnosdb
COPY docker/entrypoint.sh /entrypoint.sh
COPY docker/init-cnosdb.sh /init-cnosdb.sh
RUN chmod +x /entrypoint.sh /init-cnosdb.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["cnosdb"]
下面是我的jenkins配置:但是构建的图像Docker没有名称。
为甚么?
2条答案
按热度按时间ahy6op9u1#
我没有使用Jenkins来实现这个功能,因为我是从命令行构建的,但是您是否希望您的
name
参数显示在REPOSITORY和TAG列中?如果是这种情况,docker有一个docker tag
命令,如下所示:当我从命令行构建时,我是这样做的:
如果我检查图像:
unguejic2#
除了@rtl9069提到的,docker build命令可以作为管道的一部分运行,请看这篇文章https://www.liatrio.com/blog/building-with-docker-using-jenkins-pipelines,它用例子描述了它。