[#16] tried changing dockerfile to buildkit (WIP)
parent
4950c3660e
commit
7b9bf223c6
|
@ -1,3 +1,5 @@
|
||||||
|
# syntax = docker/dockerfile:1.2
|
||||||
|
|
||||||
# We use a multi-stage build to end up with a very small final image
|
# We use a multi-stage build to end up with a very small final image
|
||||||
FROM alpine:latest AS builder
|
FROM alpine:latest AS builder
|
||||||
|
|
||||||
|
@ -18,8 +20,8 @@ COPY src/ ./src/
|
||||||
# Thank the lords that this article exists
|
# Thank the lords that this article exists
|
||||||
# https://users.rust-lang.org/t/sigsegv-with-program-linked-against-openssl-in-an-alpine-container/52172
|
# https://users.rust-lang.org/t/sigsegv-with-program-linked-against-openssl-in-an-alpine-container/52172
|
||||||
# TODO add what these flags do & why they work
|
# TODO add what these flags do & why they work
|
||||||
RUN RUSTFLAGS="-C target-feature=-crt-static" cargo test && \
|
RUN --mount=type=cache,target=/usr/src/app/target RUSTFLAGS="-C target-feature=-crt-static" cargo test && \
|
||||||
RUSTFLAGS="-C target-feature=-crt-static" cargo build --release --bin fej
|
RUSTFLAGS="-C target-feature=-crt-static" cargo install --path . --bin fej --root /usr/local/bin
|
||||||
|
|
||||||
|
|
||||||
# Now, we create the actual image
|
# Now, we create the actual image
|
||||||
|
@ -29,6 +31,6 @@ FROM alpine:latest
|
||||||
RUN apk update && apk add --no-cache openssl libgcc
|
RUN apk update && apk add --no-cache openssl libgcc
|
||||||
|
|
||||||
# Copy binary over to final image
|
# Copy binary over to final image
|
||||||
COPY --from=builder /usr/src/app/target/release/fej /usr/local/bin/fej
|
COPY --from=builder /usr/local/bin/fej /usr/local/bin/fej
|
||||||
|
|
||||||
CMD ["/usr/local/bin/fej"]
|
CMD ["/usr/local/bin/fej"]
|
||||||
|
|
2
build
2
build
|
@ -26,7 +26,7 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run the actual build command
|
# Run the actual build command
|
||||||
docker build -t "$1:$tags" .
|
DOCKER_BUILDKIT=1 docker build -t "$1:$tags" .
|
||||||
|
|
||||||
if [[ "$2" = push ]]; then
|
if [[ "$2" = push ]]; then
|
||||||
[[ "$branch" =~ ^develop|master$ ]] || {
|
[[ "$branch" =~ ^develop|master$ ]] || {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# Ivago
|
# Ivago
|
||||||
|
|
||||||
This part of the API is a wrapper around the Ivago website (Ivago being the
|
This part of the API is a wrapper around the Ivago website (Ivago being the
|
||||||
company that collects the trash in my city). Their city isn't exactly RESTful,
|
company that collects the trash in my city). Their site isn't exactly RESTful,
|
||||||
so this endpoint simply wraps it in a RESTful wrapper.
|
so this endpoint simply wraps it in a RESTful wrapper.
|
||||||
|
|
Loading…
Reference in New Issue