首页 > 解决方案 > 将 C 库添加到 docker

问题描述

我有一个带有 c 库依赖项(例如 pbc)的 golang 项目。我创建了一个 dockerfile:

 FROM golang:1.9.6-alpine3.7

 RUN mkdir -p /go/src/app

 WORKDIR /go/src/app

 COPY . /go/src/app

 RUN apk add --update git gcc build-base gmp flex bison

 RUN go-wrapper download

 RUN go-wrapper install

 CMD ["go-wrapper", "run", "-web"]

 EXPOSE 8000

但是我不明白如何提供 pbc 库,因为它是独立库 - https://crypto.stanford.edu/pbc/howto.html

附加此库动态链接。我应该怎么办?

标签: cdockerdockerfile

解决方案


添加 docker 命令以在 docker 映像上下载、编译和安装库。

RUN wget https://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz && \
    tar -xvf pbc-0.5.14.tar.gz && \
    cd pbc-0.5.14 && \
    ./configure --prefix=$HOME/.local && \
    make && make install

RUN rm pbc-0.5.14.tar.gz && rm -rf pbc-0.5.14

这当然是一个非常简单的方法,你需要知道你想如何编译它,以及使用什么自定义标志。


推荐阅读