vw_small

Hardened fork of Vaultwarden (https://github.com/dani-garcia/vaultwarden) with fewer features.
git clone https://git.philomathiclife.com/repos/vw_small
Log | Files | Refs | README

commit 0f0e5876aeaae3a97773540dc90b05daa9d462f4
parent 43aa75dc89c60a994ed89a93b44622f01e9b90ba
Author: Robin Schneider <ypid@riseup.net>
Date:   Tue, 31 Dec 2019 15:17:31 +0100

Move `dpkg --add-architecture` before the first apt call

Thanks to @dani-garcia for the review!

Diffstat:
Mdocker/Dockerfile.j2 | 25++++++++++++-------------
Mdocker/aarch64/mysql/Dockerfile | 20++++++++++----------
Mdocker/aarch64/sqlite/Dockerfile | 20++++++++++----------
Mdocker/armv6/mysql/Dockerfile | 20++++++++++----------
Mdocker/armv6/sqlite/Dockerfile | 20++++++++++----------
Mdocker/armv7/mysql/Dockerfile | 20++++++++++----------
Mdocker/armv7/sqlite/Dockerfile | 8++++----
7 files changed, 66 insertions(+), 67 deletions(-)

diff --git a/docker/Dockerfile.j2 b/docker/Dockerfile.j2 @@ -87,6 +87,18 @@ RUN rustup set profile minimal ENV USER "root" {% endif %} +{% if "aarch64" in target_file or "armv" in target_file %} +# Install required build libs for {{ package_arch_name }} architecture. +RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ + /etc/apt/sources.list.d/deb-src.list \ + && dpkg --add-architecture {{ package_arch_name }} \ + && apt-get update \ + && apt-get install -y \ + --no-install-recommends \ + libssl-dev{{ package_arch_prefix }} \ + libc6-dev{{ package_arch_prefix }} + +{% endif -%} {% if "aarch64" in target_file %} RUN apt-get update \ && apt-get install -y \ @@ -143,19 +155,6 @@ RUN apt-get update && apt-get install -y \ RUN USER=root cargo new --bin app WORKDIR /app -{% if "aarch64" in target_file or "armv" in target_file %} -# Install required build libs for {{ package_arch_name }} architecture. -RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ - /etc/apt/sources.list.d/deb-src.list \ - && dpkg --add-architecture {{ package_arch_name }} \ - && apt-get update \ - && apt-get install -y \ - --no-install-recommends \ - libssl-dev{{ package_arch_prefix }} \ - libc6-dev{{ package_arch_prefix }} - -{% endif -%} - # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain diff --git a/docker/aarch64/mysql/Dockerfile b/docker/aarch64/mysql/Dockerfile @@ -37,6 +37,16 @@ ARG DB=mysql # Don't download rust docs RUN rustup set profile minimal +# Install required build libs for arm64 architecture. +RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ + /etc/apt/sources.list.d/deb-src.list \ + && dpkg --add-architecture arm64 \ + && apt-get update \ + && apt-get install -y \ + --no-install-recommends \ + libssl-dev:arm64 \ + libc6-dev:arm64 + RUN apt-get update \ && apt-get install -y \ --no-install-recommends \ @@ -58,16 +68,6 @@ RUN apt-get update && apt-get install -y \ RUN USER=root cargo new --bin app WORKDIR /app -# Install required build libs for arm64 architecture. -RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ - /etc/apt/sources.list.d/deb-src.list \ - && dpkg --add-architecture arm64 \ - && apt-get update \ - && apt-get install -y \ - --no-install-recommends \ - libssl-dev:arm64 \ - libc6-dev:arm64 - # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain diff --git a/docker/aarch64/sqlite/Dockerfile b/docker/aarch64/sqlite/Dockerfile @@ -37,6 +37,16 @@ ARG DB=sqlite # Don't download rust docs RUN rustup set profile minimal +# Install required build libs for arm64 architecture. +RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ + /etc/apt/sources.list.d/deb-src.list \ + && dpkg --add-architecture arm64 \ + && apt-get update \ + && apt-get install -y \ + --no-install-recommends \ + libssl-dev:arm64 \ + libc6-dev:arm64 + RUN apt-get update \ && apt-get install -y \ --no-install-recommends \ @@ -52,16 +62,6 @@ ENV USER "root" RUN USER=root cargo new --bin app WORKDIR /app -# Install required build libs for arm64 architecture. -RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ - /etc/apt/sources.list.d/deb-src.list \ - && dpkg --add-architecture arm64 \ - && apt-get update \ - && apt-get install -y \ - --no-install-recommends \ - libssl-dev:arm64 \ - libc6-dev:arm64 - # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain diff --git a/docker/armv6/mysql/Dockerfile b/docker/armv6/mysql/Dockerfile @@ -37,6 +37,16 @@ ARG DB=mysql # Don't download rust docs RUN rustup set profile minimal +# Install required build libs for armel architecture. +RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ + /etc/apt/sources.list.d/deb-src.list \ + && dpkg --add-architecture armel \ + && apt-get update \ + && apt-get install -y \ + --no-install-recommends \ + libssl-dev:armel \ + libc6-dev:armel + RUN apt-get update \ && apt-get install -y \ --no-install-recommends \ @@ -58,16 +68,6 @@ RUN apt-get update && apt-get install -y \ RUN USER=root cargo new --bin app WORKDIR /app -# Install required build libs for armel architecture. -RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ - /etc/apt/sources.list.d/deb-src.list \ - && dpkg --add-architecture armel \ - && apt-get update \ - && apt-get install -y \ - --no-install-recommends \ - libssl-dev:armel \ - libc6-dev:armel - # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain diff --git a/docker/armv6/sqlite/Dockerfile b/docker/armv6/sqlite/Dockerfile @@ -37,6 +37,16 @@ ARG DB=sqlite # Don't download rust docs RUN rustup set profile minimal +# Install required build libs for armel architecture. +RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ + /etc/apt/sources.list.d/deb-src.list \ + && dpkg --add-architecture armel \ + && apt-get update \ + && apt-get install -y \ + --no-install-recommends \ + libssl-dev:armel \ + libc6-dev:armel + RUN apt-get update \ && apt-get install -y \ --no-install-recommends \ @@ -52,16 +62,6 @@ ENV USER "root" RUN USER=root cargo new --bin app WORKDIR /app -# Install required build libs for armel architecture. -RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ - /etc/apt/sources.list.d/deb-src.list \ - && dpkg --add-architecture armel \ - && apt-get update \ - && apt-get install -y \ - --no-install-recommends \ - libssl-dev:armel \ - libc6-dev:armel - # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain diff --git a/docker/armv7/mysql/Dockerfile b/docker/armv7/mysql/Dockerfile @@ -37,16 +37,6 @@ ARG DB=mysql # Don't download rust docs RUN rustup set profile minimal -# Install MySQL package -RUN apt-get update && apt-get install -y \ - --no-install-recommends \ - libmariadb-dev:armhf \ - && rm -rf /var/lib/apt/lists/* - -# Creates a dummy project used to grab dependencies -RUN USER=root cargo new --bin app -WORKDIR /app - # Install required build libs for armhf architecture. RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ /etc/apt/sources.list.d/deb-src.list \ @@ -57,6 +47,16 @@ RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ libssl-dev:armhf \ libc6-dev:armhf +# Install MySQL package +RUN apt-get update && apt-get install -y \ + --no-install-recommends \ + libmariadb-dev:armhf \ + && rm -rf /var/lib/apt/lists/* + +# Creates a dummy project used to grab dependencies +RUN USER=root cargo new --bin app +WORKDIR /app + # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain diff --git a/docker/armv7/sqlite/Dockerfile b/docker/armv7/sqlite/Dockerfile @@ -37,10 +37,6 @@ ARG DB=sqlite # Don't download rust docs RUN rustup set profile minimal -# Creates a dummy project used to grab dependencies -RUN USER=root cargo new --bin app -WORKDIR /app - # Install required build libs for armhf architecture. RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ /etc/apt/sources.list.d/deb-src.list \ @@ -51,6 +47,10 @@ RUN sed 's/^deb/deb-src/' /etc/apt/sources.list > \ libssl-dev:armhf \ libc6-dev:armhf +# Creates a dummy project used to grab dependencies +RUN USER=root cargo new --bin app +WORKDIR /app + # Copies over *only* your manifests and build files COPY ./Cargo.* ./ COPY ./rust-toolchain ./rust-toolchain