Improves google-cloud-storage performance
And also fixes the build by providing a 'alpine version' of the google/crc32c library, which google-crc32c and google-cloud-storage and ultimately django-storages[google] depend on.
This commit is contained in:
parent
a0a32b930e
commit
9255afd060
22
Dockerfile
22
Dockerfile
@ -6,15 +6,18 @@ RUN apk add --no-cache \
|
||||
build-base \
|
||||
cargo \
|
||||
ca-certificates \
|
||||
cmake \
|
||||
cyrus-sasl-dev \
|
||||
git \
|
||||
graphviz \
|
||||
jpeg-dev \
|
||||
libevent-dev \
|
||||
libffi-dev \
|
||||
openssl-dev \
|
||||
libxslt-dev \
|
||||
make \
|
||||
musl-dev \
|
||||
openldap-dev \
|
||||
openssl-dev \
|
||||
postgresql-dev \
|
||||
py3-pip \
|
||||
python3-dev \
|
||||
@ -24,6 +27,20 @@ RUN apk add --no-cache \
|
||||
setuptools \
|
||||
wheel
|
||||
|
||||
# Build libcrc32c for google-crc32c python module
|
||||
RUN git clone https://github.com/google/crc32c \
|
||||
&& cd crc32c \
|
||||
&& git submodule update --init --recursive \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DCRC32C_BUILD_TESTS=no \
|
||||
-DCRC32C_BUILD_BENCHMARKS=no \
|
||||
-DBUILD_SHARED_LIBS=yes \
|
||||
.. \
|
||||
&& make all install
|
||||
|
||||
ARG NETBOX_PATH
|
||||
COPY ${NETBOX_PATH}/requirements.txt requirements-container.txt /
|
||||
RUN /opt/netbox/venv/bin/pip install \
|
||||
@ -55,6 +72,9 @@ RUN apk add --no-cache \
|
||||
|
||||
WORKDIR /opt
|
||||
|
||||
COPY --from=builder /usr/local/lib/libcrc32c.* /usr/local/lib/
|
||||
COPY --from=builder /usr/local/include/crc32c /usr/local/include
|
||||
COPY --from=builder /usr/local/lib/cmake/Crc32c /usr/local/lib/cmake/
|
||||
COPY --from=builder /opt/netbox/venv /opt/netbox/venv
|
||||
|
||||
ARG NETBOX_PATH
|
||||
|
@ -1,5 +1,5 @@
|
||||
napalm==3.3.1
|
||||
ruamel.yaml==0.17.16
|
||||
django-auth-ldap==3.0.0
|
||||
google-crc32c==1.1.2
|
||||
google-crc32c==1.1.4
|
||||
django-storages[azure,boto3,dropbox,google,libcloud,sftp]==1.11.1
|
||||
|
Loading…
Reference in New Issue
Block a user