fej/docker/Dockerfile.builder

32 lines
876 B
Docker
Raw Normal View History

2021-04-17 13:46:38 +02:00
# vim: filetype=dockerfile
# Our entire toolchain runs in alpine
2021-04-24 09:33:42 +02:00
FROM alpine:3.13.5 AS builder
2021-04-17 13:46:38 +02:00
ENV PATH "$PATH:/app/.cargo/bin"
# Needed for proper compiling of openssl-dev
ENV RUSTFLAGS "-C target-feature=-crt-static"
2021-04-17 13:46:38 +02:00
# Add the build user
# Install dependencies
RUN addgroup -S builder && \
adduser -S builder -G builder -h /app && \
apk update && \
apk add --no-cache \
curl \
gcc \
libgcc \
musl-dev \
openssl-dev \
postgresql-dev
2021-04-17 13:46:38 +02:00
# Switch to the non-root user
USER builder
WORKDIR /app
# Install rustup in the new user's home
# Create mountpoints for volumes with correct permissions
RUN { curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain nightly; } && \
rustup target add x86_64-unknown-linux-musl --toolchain nightly && \
mkdir -p .cargo/registry target