First test commit
This commit is contained in:
commit
e9d2269cc7
1 changed files with 67 additions and 0 deletions
67
Dockerfile
Normal file
67
Dockerfile
Normal file
|
|
@ -0,0 +1,67 @@
|
||||||
|
FROM docker.io/louislam/uptime-kuma:1.23.16-debian@sha256:431fee3be822b04861cf0e35daf4beef6b7cb37391c5f26c3ad6e12ce280fe18 AS app-donor
|
||||||
|
|
||||||
|
FROM docker.io/library/node:20.19.1-bookworm-slim@sha256:9513b8d4c59c7c35e76934765add45efb89102d639f945341d7948b168237633
|
||||||
|
|
||||||
|
ARG UID=3310
|
||||||
|
ARG GID=3310
|
||||||
|
|
||||||
|
# renovate: datasource=pypi depName=apprise versioning=pep440
|
||||||
|
ARG APPRISE_VERSION=1.9.3
|
||||||
|
|
||||||
|
# renovate: datasource=github-releases depName=cloudflare/cloudflared
|
||||||
|
ARG CLOUDFLARED_VERSION=2025.4.0
|
||||||
|
|
||||||
|
COPY --from=app-donor /app /app
|
||||||
|
|
||||||
|
RUN apt-get update -qqy \
|
||||||
|
# Install Uptime-Kuma dependencies
|
||||||
|
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -qqy \
|
||||||
|
python3 \
|
||||||
|
python3-pip \
|
||||||
|
python3-cryptography \
|
||||||
|
python3-six \
|
||||||
|
python3-yaml \
|
||||||
|
python3-click \
|
||||||
|
python3-markdown \
|
||||||
|
python3-requests \
|
||||||
|
python3-requests-oauthlib \
|
||||||
|
sqlite3 \
|
||||||
|
iputils-ping \
|
||||||
|
util-linux \
|
||||||
|
dumb-init \
|
||||||
|
curl \
|
||||||
|
ca-certificates \
|
||||||
|
bash \
|
||||||
|
&& pip --no-cache-dir install --break-system-packages apprise==${APPRISE_VERSION} \
|
||||||
|
&& setcap -r /usr/bin/ping \
|
||||||
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
|
\
|
||||||
|
# Download and install cloudflared
|
||||||
|
&& ARCH= && dpkgArch="$(dpkg --print-architecture)" \
|
||||||
|
&& case "${dpkgArch##*-}" in \
|
||||||
|
amd64) ARCH='amd64';; \
|
||||||
|
arm64) ARCH='arm64';; \
|
||||||
|
armhf) ARCH='arm';; \
|
||||||
|
*) echo "unsupported architecture"; exit 1 ;; \
|
||||||
|
esac \
|
||||||
|
&& curl -fsSLo /usr/local/bin/cloudflared https://github.com/cloudflare/cloudflared/releases/download/${CLOUDFLARED_VERSION}/cloudflared-linux-${ARCH} \
|
||||||
|
&& chmod +x /usr/local/bin/cloudflared \
|
||||||
|
\
|
||||||
|
# Setup non-root system account + group
|
||||||
|
&& addgroup --system --gid ${GID} uptime-kuma || true \
|
||||||
|
&& adduser --system --disabled-login --ingroup uptime-kuma --no-create-home --home /nonexistent --gecos "uptime-kuma" --shell /bin/false --uid ${UID} uptime-kuma || true \
|
||||||
|
&& mkdir -p /app/data \
|
||||||
|
&& chown -R uptime-kuma:0 /app \
|
||||||
|
&& chmod -R g=u /app \
|
||||||
|
\
|
||||||
|
# Smoke Tests
|
||||||
|
&& set -ex || exit $?; \
|
||||||
|
cloudflared version; \
|
||||||
|
apprise --version;
|
||||||
|
|
||||||
|
ENV HOME=/app
|
||||||
|
WORKDIR /app
|
||||||
|
USER uptime-kuma
|
||||||
|
EXPOSE 3001
|
||||||
|
VOLUME ["/app/data"]
|
||||||
|
CMD ["/usr/bin/dumb-init", "--", "node", "server/server.js"]
|
||||||
Loading…
Add table
Add a link
Reference in a new issue