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 \
|
build-base \
|
||||||
cargo \
|
cargo \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
cyrus-sasl-dev \
|
cyrus-sasl-dev \
|
||||||
|
git \
|
||||||
graphviz \
|
graphviz \
|
||||||
jpeg-dev \
|
jpeg-dev \
|
||||||
libevent-dev \
|
libevent-dev \
|
||||||
libffi-dev \
|
libffi-dev \
|
||||||
openssl-dev \
|
|
||||||
libxslt-dev \
|
libxslt-dev \
|
||||||
|
make \
|
||||||
musl-dev \
|
musl-dev \
|
||||||
openldap-dev \
|
openldap-dev \
|
||||||
|
openssl-dev \
|
||||||
postgresql-dev \
|
postgresql-dev \
|
||||||
py3-pip \
|
py3-pip \
|
||||||
python3-dev \
|
python3-dev \
|
||||||
@ -24,6 +27,20 @@ RUN apk add --no-cache \
|
|||||||
setuptools \
|
setuptools \
|
||||||
wheel
|
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
|
ARG NETBOX_PATH
|
||||||
COPY ${NETBOX_PATH}/requirements.txt requirements-container.txt /
|
COPY ${NETBOX_PATH}/requirements.txt requirements-container.txt /
|
||||||
RUN /opt/netbox/venv/bin/pip install \
|
RUN /opt/netbox/venv/bin/pip install \
|
||||||
@ -55,6 +72,9 @@ RUN apk add --no-cache \
|
|||||||
|
|
||||||
WORKDIR /opt
|
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
|
COPY --from=builder /opt/netbox/venv /opt/netbox/venv
|
||||||
|
|
||||||
ARG NETBOX_PATH
|
ARG NETBOX_PATH
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
napalm==3.3.1
|
napalm==3.3.1
|
||||||
ruamel.yaml==0.17.16
|
ruamel.yaml==0.17.16
|
||||||
django-auth-ldap==3.0.0
|
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
|
django-storages[azure,boto3,dropbox,google,libcloud,sftp]==1.11.1
|
||||||
|
Loading…
Reference in New Issue
Block a user