mirror of
https://github.com/abraunegg/onedrive.git
synced 2026-10-23 03:08:55 +03:00
* Refresh Docker build tooling and container documentation ## Summary Refresh the Docker container build tooling and align the Docker and Podman documentation with the container bases already used by `master`. ## Changes - Update the Go builder used for gosu: - `1.25` → `1.27` - Update gosu across all container variants: - `1.17` → `1.19` - Parameterise the gosu version in the Debian Dockerfile. - Update Docker and Podman documentation to reflect: - Fedora 44 - Alpine Linux 3.24 - Debian 13 / Trixie * Update Dockerfile-debian
42 lines
960 B
Docker
42 lines
960 B
Docker
# -*-Dockerfile-*-
|
|
|
|
ARG FEDORA_VERSION=44
|
|
ARG DEBIAN_VERSION=trixie
|
|
ARG GO_VERSION=1.27
|
|
ARG GOSU_VERSION=1.19
|
|
|
|
FROM golang:${GO_VERSION}-${DEBIAN_VERSION} AS builder-gosu
|
|
ARG GOSU_VERSION
|
|
RUN go install -ldflags "-s -w" github.com/tianon/gosu@${GOSU_VERSION}
|
|
|
|
FROM fedora:${FEDORA_VERSION} AS builder-onedrive
|
|
|
|
RUN dnf install -y ldc pkgconf libcurl-devel sqlite-devel dbus-devel git awk
|
|
|
|
ENV PKG_CONFIG=/usr/bin/pkgconf
|
|
|
|
COPY . /usr/src/onedrive
|
|
WORKDIR /usr/src/onedrive
|
|
|
|
RUN ./configure --enable-debug\
|
|
&& make clean \
|
|
&& make \
|
|
&& make install
|
|
|
|
FROM fedora:${FEDORA_VERSION}
|
|
|
|
RUN dnf clean all \
|
|
&& dnf -y update
|
|
|
|
RUN dnf install -y libcurl sqlite ldc-libs dbus-libs \
|
|
&& dnf clean all \
|
|
&& mkdir -p /onedrive/conf /onedrive/data
|
|
|
|
COPY --from=builder-gosu /go/bin/gosu /usr/local/bin/
|
|
COPY --from=builder-onedrive /usr/local/bin/onedrive /usr/local/bin/
|
|
|
|
COPY contrib/docker/entrypoint.sh /
|
|
RUN chmod +x /entrypoint.sh
|
|
|
|
ENTRYPOINT ["/entrypoint.sh"]
|