42 lines
1.4 KiB
Docker
42 lines
1.4 KiB
Docker
# Minimal debian image that installs hbbs/hbbr/rustdesk-utils from the .deb
|
|
# artifact produced by the Gitea Actions workflow at
|
|
# https://gitea.cstudio.ch/mike/rustdesk-server.
|
|
#
|
|
# To force a fresh artifact pull on rebuild, bump CACHE_BUST (e.g.
|
|
# `docker compose build --build-arg CACHE_BUST=$(date +%s)`).
|
|
#
|
|
# The Gitea workflow only produces amd64 .debs, so pin the image platform.
|
|
# On non-amd64 hosts (e.g. Apple Silicon) Docker will emulate via qemu.
|
|
FROM --platform=linux/amd64 debian:bookworm-slim
|
|
|
|
ARG GITEA_URL=https://gitea.cstudio.ch
|
|
ARG GITEA_OWNER=mike
|
|
ARG GITEA_REPO=rustdesk-server
|
|
ARG GITEA_BRANCH=pro-features
|
|
# When set, the script downloads this URL directly and skips API discovery.
|
|
ARG ARTIFACT_URL=
|
|
ARG CACHE_BUST=0
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
ca-certificates curl jq unzip tini \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY fetch-artifact.sh /usr/local/sbin/fetch-artifact.sh
|
|
RUN chmod +x /usr/local/sbin/fetch-artifact.sh
|
|
|
|
RUN GITEA_URL="$GITEA_URL" GITEA_OWNER="$GITEA_OWNER" GITEA_REPO="$GITEA_REPO" \
|
|
GITEA_BRANCH="$GITEA_BRANCH" ARTIFACT_URL="$ARTIFACT_URL" \
|
|
/usr/local/sbin/fetch-artifact.sh
|
|
|
|
WORKDIR /var/lib/rustdesk-server
|
|
|
|
# 21114 admin http, 21115 nat test, 21116/tcp+udp signal, 21117 relay,
|
|
# 21118 web socket signal, 21119 web socket relay.
|
|
EXPOSE 21114 21115 21116 21116/udp 21117 21118 21119
|
|
|
|
ENTRYPOINT ["/usr/bin/tini", "--"]
|
|
CMD ["/usr/bin/hbbs"]
|