Как установить MongoDB 4.4 на Alpine 3.11 - PullRequest
0 голосов
/ 25 марта 2020

Я хочу установить MongoDB 4.4 на Alpine 3.11, но похоже, что Alpine удалил пакет MDB из-за лицензии BSD. Я должен создать образ самостоятельно, но у меня есть некоторые ошибки ...

Сначала я клонирую репозиторий git:

git clone --branch v4.4 --single-branch --depth 1 https://github.com/mongodb/mongo.git /tmp/mongo

Затем я устанавливаю несколько пакетов:

apk add --no-cache --virtual build-pack \
        boost-build=1.69.0-r1 \
        boost-filesystem=1.71.0-r1 \
        boost-iostreams=1.71.0-r1 \
        boost-program_options=1.71.0-r1 \
        boost-python3=1.71.0-r1 \
        boost-system=1.71.0-r1 \
        build-base=0.5-r1 \
        busybox=1.31.1-r9 \
        curl-dev=7.67.0-r0 \
        cmake=3.15.5-r0 \
        db=5.3.28-r1 \
        isl=0.18-r0 \
        libbz2=1.0.8-r1 \
        libc-dev=0.7.2-r0 \
        libgcc=9.2.0-r4
        libpcrecpp=8.43-r0 \
        libsasl=2.1.27-r5 \
        libssl1.1=1.1.1d-r3 \
        libstdc++=9.2.0-r4 \
        linux-headers=4.19.36-r0 \
        g++=9.2.0-r4 \
        gcc=9.2.0-r4 \
        gmp=6.1.2-r1 \
        jsoncpp=1.9.2-r0  \
        jsoncpp-dev=1.9.2-r0 \
        mpc1=1.1.0-r1 \
        mpfr4=4.0.2-r1 \
        musl=1.1.24-r2 \
        musl-dev=1.1.24-r2 \
        openssl-dev=1.1.1d-r3 \
        pcre=8.43-r0 \
        pkgconf=1.6.3-r0 \
        python3=3.8.2-r0 \
        py3-cheetah=3.2.4-r1 \
        py3-crypto=2.6.1-r5 \
        py3-openssl=19.1.0-r0 \
        py3-psutil=5.6.7-r0 \
        py3-yaml=5.3.1-r0 \
        scons=3.1.1-r0 \
        snappy=1.1.7-r1 \
        xz-libs=5.2.4-r0 \
        yaml-cpp=0.6.3-r0 \
        yaml-cpp-dev=0.6.3-r0 \
        zlib=1.2.11-r3

У меня возникает эта ошибка при использовании этой команды python3 buildscripts/scons.py MONGO_VERSION=4.4 --prefix=/opt/mongo mongod --disable-warnings-as-errors:

src/mongo/util/processinfo_linux.cpp:50:10: fatal error: gnu/libc-version.h: No such file or directory
...
scons: building terminated because of errors.
build/opt/mongo/util/processinfo_linux.o failed: Error 1

Есть идеи?

Спасибо.

РЕДАКТИРОВАТЬ: Я пробовал версию 4.2.5, у меня есть это сообщение об ошибке и:

In file included from src/third_party/mozjs-60/platform/x86_64/linux/build/Unified_cpp_js_src29.cpp:11:
src/third_party/mozjs-60/extract/js/src/threading/posix/Thread.cpp: In function 'void js::ThisThread::GetName(char*, size_t)':
src/third_party/mozjs-60/extract/js/src/threading/posix/Thread.cpp:210:8: error: 'pthread_getname_np' was not declared in this scope; did you mean 'pthread_setname_np'?
 210 |   rv = pthread_getname_np(pthread_self(), nameBuffer, len);
     |        ^~~~~~~~~~~~~~~~~~
     |        pthread_setname_np
scons: *** [build/opt/third_party/mozjs-60/platform/x86_64/linux/build/Unified_cpp_js_src29.o] Error 1
scons: building terminated because of errors.
build/opt/third_party/mozjs-60/platform/x86_64/linux/build/Unified_cpp_js_src29.o failed: Error 1

С этими пакетами:

apk add --no-cache --virtual build-pack \
        build-base=0.5-r1 \
        cmake=3.15.5-r0 \
        curl-dev=7.67.0-r0 \
        libgcc=9.2.0-r4 \
        libssl1.1=1.1.1d-r3 \
        libstdc++=9.2.0-r4 \
        linux-headers=4.19.36-r0 \
        g++=9.2.0-r4 \
        gcc=9.2.0-r4 \
        openssl-dev=1.1.1d-r3 \
        musl=1.1.24-r2
        python3=3.8.2-r0 \
        py3-cheetah=3.2.4-r1 \
        py3-crypto=2.6.1-r5 \
        py3-openssl=19.1.0-r0 \
        py3-psutil=5.6.7-r0 \
        py3-yaml=5.3.1-r0 \
        scons=3.1.1-r0 \
        libc-dev=0.7.2-r0
...