I eat words

Linuxoid

Matrix - @saint:group.lt

  • 3 Posts
  • 22 Comments
Joined 3 years ago
cake
Cake day: December 3rd, 2021

help-circle




















  • hi,

    i am using this

    root@instance-20211112-2005:/opt/lemmy/lemmy/docker# cat Dockerfile.arm64
    FROM rust:1.70.0 as builder
    WORKDIR /app
    
    COPY . .
    
    # This can be set to release using --build-arg
    ARG RUST_RELEASE_MODE="debug"
    
    COPY . .
    
    # Build the project
    
    # Debug mode build
    RUN --mount=type=cache,target=/app/target \
        if [ "$RUST_RELEASE_MODE" = "debug" ] ; then \
          echo "pub const VERSION: &str = \"$(git describe --tag)\";" > "crates/utils/src/version.rs" \
          && cargo build \
          && cp ./target/$RUST_RELEASE_MODE/lemmy_server /app/lemmy_server; \
        fi
    
    # Release mode build
    RUN \
        if [ "$RUST_RELEASE_MODE" = "release" ] ; then \
          echo "pub const VERSION: &str = \"$(git describe --tag)\";" > "crates/utils/src/version.rs" \
          && cargo build --release \
          && cp ./target/$RUST_RELEASE_MODE/lemmy_server /app/lemmy_server; \
        fi
    
    FROM debian:bullseye-slim
    RUN apt-get update && apt-get install -y libpq5 ca-certificates && rm -rf /var/lib/apt/lists/*
    
    COPY --from=builder /app/lemmy_server /app/lemmy
    
    CMD ["/app/lemmy"]
    

    Also Lemmy developers are working on cross build - so it should be available in the future I hope :)


  • yay! thank you all!

    i have made a not-so-quick-but-dirty Dockerfile to build on arm64

    FROM rust:1.70.0
    WORKDIR /app
    
    COPY . .
    
    RUN echo "pub const VERSION: &str = \"$(git describe --tag)\";" > "crates/utils/src/version.rs"
    RUN cargo build --release
    
    RUN apt update
    RUN apt -y install libpq5
    RUN cp /app/target/release/lemmy_server /app/lemmy
    
    CMD ["/app/lemmy"]
    

    later I am planning to improve it a bit, to make the image smaller if i can