mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-10-24 23:10:41 +02:00
The rocksdb release image fails to compile: grocksdb v1.11.1 calls C.rocksdb_block_based_options_set_block_align, C.rocksdb_block_based_options_set_index_block_search_type, and C.rocksdb_block_based_options_set_separate_key_value_in_data_block, all of which only exist in RocksDB v11.x headers. grocksdb v1.11.1's own build script pins 11.1.2, so move every default from v10.10.1 to v11.1.2 to match. Generated with [Devin](https://devin.ai) Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
18 lines
608 B
Docker
18 lines
608 B
Docker
FROM golang:1.26 AS builder
|
|
|
|
RUN apt-get update
|
|
RUN apt-get install -y build-essential libsnappy-dev zlib1g-dev libbz2-dev libgflags-dev liblz4-dev libzstd-dev
|
|
|
|
ARG ROCKSDB_VERSION=v11.1.2
|
|
ENV ROCKSDB_VERSION=${ROCKSDB_VERSION}
|
|
|
|
# build RocksDB
|
|
RUN cd /tmp && \
|
|
git clone https://github.com/facebook/rocksdb.git /tmp/rocksdb --depth 1 --single-branch --branch $ROCKSDB_VERSION && \
|
|
cd rocksdb && \
|
|
PORTABLE=1 make -j"$(nproc)" static_lib && \
|
|
make install-static
|
|
|
|
ENV CGO_CFLAGS="-I/tmp/rocksdb/include"
|
|
ENV CGO_LDFLAGS="-L/tmp/rocksdb -lrocksdb -lstdc++ -lm -lz -lbz2 -lsnappy -llz4 -lzstd"
|