38 lines
980 B
Docker
38 lines
980 B
Docker
|
ARG REPO_LOCATION
|
||
|
|
||
|
FROM ${REPO_LOCATION}minideb AS builder
|
||
|
|
||
|
RUN install_packages software-properties-common git gpg dirmngr gpg-agent gcc libc-dev
|
||
|
|
||
|
# Add the golang apt repository
|
||
|
# Note that install_packages runs apt update automatically
|
||
|
# Apparentl apt-add-repository doesn't properly import the GPG key :-/
|
||
|
RUN add-apt-repository --yes ppa:longsleep/golang-backports \
|
||
|
&& apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F6BC817356A3D45E
|
||
|
|
||
|
RUN install_packages golang-go
|
||
|
|
||
|
RUN git clone https://github.com/go-shiori/shiori.git /srv/shiori
|
||
|
|
||
|
WORKDIR /srv/shiori
|
||
|
|
||
|
RUN git checkout "$(git describe --tags "$(git rev-list --tags --max-count=1)")"
|
||
|
|
||
|
# armv7l+, GOARM can be set as low as 5 if you have an old board (but I have Raspberry Pi 4B+ boards)
|
||
|
RUN GOOS=linux GOARCH=arm GOARM=7 go build -v
|
||
|
|
||
|
|
||
|
FROM ${REPO_LOCATION}minideb
|
||
|
|
||
|
COPY --from=builder /srv/shiori/shiori /srv/shiori
|
||
|
|
||
|
VOLUME /srv/data
|
||
|
|
||
|
WORKDIR /srv/data
|
||
|
|
||
|
USER 95:95
|
||
|
|
||
|
ENTRYPOINT [ "/srv/run.sh" ]
|
||
|
|
||
|
CMD [ "serve" ]
|