通过Jenkins构建的图像处理器没有名称和标签

bejyjqdl  于 2023-03-17  发布在  Jenkins
关注(0)|答案(2)|浏览(185)

下面是我的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没有名称。
为甚么?

ahy6op9u

ahy6op9u1#

我没有使用Jenkins来实现这个功能,因为我是从命令行构建的,但是您是否希望您的name参数显示在REPOSITORY和TAG列中?如果是这种情况,docker有一个docker tag命令,如下所示:

~$ docker tag <image-id> repo/name:tag

当我从命令行构建时,我是这样做的:

~$ docker build -t repo/name:0.1 .

如果我检查图像:

❯ docker image ls
REPOSITORY                                                           TAG         IMAGE ID       CREATED        SIZE
repo/name                                                            0.1      689459c139ef   2 days ago      187MB
unguejic

unguejic2#

除了@rtl9069提到的,docker build命令可以作为管道的一部分运行,请看这篇文章https://www.liatrio.com/blog/building-with-docker-using-jenkins-pipelines,它用例子描述了它。

相关问题