登录
首页 >  Golang >  Go问答

在 golang:1.14.9-alpine docker 中找不到 liblzma-dev 和 libxml-dev 包

来源:stackoverflow

时间:2024-03-05 21:36:24 104浏览 收藏

在Golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《在 golang:1.14.9-alpine docker 中找不到 liblzma-dev 和 libxml-dev 包》,聊聊,希望可以帮助到正在努力赚钱的你。

问题内容

我尝试使用 golang:1.14.9-alpine 构建 docker 映像,但安装库时总是遇到以下错误,我需要做什么来安装库?

错误:无法选择包: liblzma-dev(没有这样的包): 要求者:世界[liblzma-dev] libxml-dev(没有这样的包): 需要者:world[libxml-dev]

在我的 docker 文件下面

FROM golang:1.14.9-alpine
RUN apk update && apk upgrade \
    && apk --no-cache --update add build-base
RUN apk add --no-cache \
        alpine-sdk \
        protobuf \
        ca-certificates \
        curl \
        make \
        libx11-dev \
        libxslt-dev \
        libxml2 \
        gcc \
        g++ \
        ca-certificates \
        libxml-dev \
        liblzma-dev \
        libxslt-dev
RUN go get github.com/golang/protobuf/[email protected]
RUN go get github.com/golang/protobuf/[email protected]
RUN go get  github.com/micro/protoc-gen-micro/v2
RUN export GO111MODULE=on
COPY . .
RUN make build
RUN chmod 765 test-service

正确答案


我认为包裹是xz-dev

您可以尝试多阶段构建,然后将所需的可执行文件复制到 alpine 版本。它将进一步优化构建。

你可以尝试这样的事情:

# Build Stage
FROM golang:1.14.9 as build
...
# Build here
RUN make build 
...

# Release stage
FROM alpine:3.13.5 as release
# Copy only the needed files
COPY --from=build  
CMD 

今天关于《在 golang:1.14.9-alpine docker 中找不到 liblzma-dev 和 libxml-dev 包》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>