grain.social is a photo sharing platform built on atproto.
1FROM denoland/deno:2.2.3 AS builder 2 3WORKDIR /app 4 5COPY . . 6 7# Give ownership to deno user and cache dependencies 8RUN chown -R deno:deno /app && \ 9 deno cache ./main.tsx 10 11FROM denoland/deno:alpine-2.2.3 12 13COPY --from=flyio/litefs:0.5 /usr/local/bin/litefs /usr/local/bin/litefs 14COPY litefs.yml /etc/litefs.yml 15 16# libstdc++ is needed for @gfx/canvas 17RUN apk add --no-cache ca-certificates fuse3 libstdc++ sqlite 18 19WORKDIR /app 20 21# Needed for @gfx/canvas 22RUN mkdir -p /usr/share/fonts 23 24COPY --from=builder $DENO_DIR $DENO_DIR 25COPY --from=builder /app . 26 27# Run LiteFS as the entrypoint. After it has connected and sync'd with the 28# cluster, it will run the commands listed in the "exec" field of the config. 29ENTRYPOINT ["litefs", "mount"]