-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathContainerfile
More file actions
52 lines (43 loc) · 2.28 KB
/
Copy pathContainerfile
File metadata and controls
52 lines (43 loc) · 2.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# --------------------------------------------------------------------------
# THIS FILE IS AUTOGENERATED - DO NOT EDIT MANUALLY
#
# Source: Containerfile.j2
# --------------------------------------------------------------------------
ARG BASE_VERSION=15.1
FROM ghcr.io/daemonless/base:${BASE_VERSION}
ARG FREEBSD_ARCH=amd64
ARG UPSTREAM_URL="https://api.github.com/repos/syncthing/syncthing/releases/latest"
ARG UPSTREAM_JQ=".tag_name"
ARG HEALTHCHECK_ENDPOINT="http://localhost:8384/rest/noauth/health"
ENV HEALTHCHECK_URL="${HEALTHCHECK_ENDPOINT}"
ENV HOME="/config"
# --- Metadata (Injected by Generator) ---
LABEL org.opencontainers.image.title="Syncthing" \
org.opencontainers.image.description="Syncthing replaces proprietary sync and cloud services with something open, trustworthy and decentralized. Your data is your data alone and you deserve to choose where it is stored, if it is shared with some third party and how it's transmitted over the Internet." \
org.opencontainers.image.source="https://github.com/daemonless/syncthing" \
org.opencontainers.image.url="https://syncthing.net/" \
org.opencontainers.image.licenses="MPL-2.0" \
org.opencontainers.image.vendor="daemonless" \
org.opencontainers.image.authors="daemonless" \
io.daemonless.category="Network" \
io.daemonless.port="8384" \
io.daemonless.volumes="/config" \
io.daemonless.arch="${FREEBSD_ARCH}" \
io.daemonless.upstream-url="${UPSTREAM_URL}" \
io.daemonless.upstream-jq="${UPSTREAM_JQ}" \
io.daemonless.healthcheck-url="${HEALTHCHECK_ENDPOINT}"
# Download and install Syncthing from upstream releases
RUN VERSION=$(fetch -qo - "${UPSTREAM_URL}" | jq -r '.tag_name') && \
fetch -qo - "https://github.com/syncthing/syncthing/releases/download/${VERSION}/syncthing-freebsd-${FREEBSD_ARCH}-${VERSION}.tar.gz" | \
tar xzf - -C /tmp && \
mv /tmp/syncthing-freebsd-${FREEBSD_ARCH}-${VERSION}/syncthing /usr/local/bin/syncthing && \
chmod +x /usr/local/bin/syncthing && \
mkdir -p /app && \
echo "${VERSION}" > /app/version && \
rm -rf /tmp/syncthing-*
COPY root/ /
RUN chmod +x /etc/services.d/syncthing/run /healthz
# --- Expose (Injected by Generator) ---
EXPOSE 8384 22000 22000 21027
# --- Volumes (Injected by Generator) ---
VOLUME /config