30 lines
1.2 KiB
Docker
30 lines
1.2 KiB
Docker
# Minimal debian image with the tooling needed to download + install the
|
|
# hbbs/hbbr/rustdesk-utils .deb at *container start* (not build time).
|
|
# The actual fetch happens in /usr/local/sbin/entrypoint.sh, which calls
|
|
# fetch-artifact.sh on every start — see docker-compose.yml for the runtime
|
|
# env vars (GITEA_URL, GITEA_OWNER, GITEA_REPO, GITEA_BRANCH, ARTIFACT_URL).
|
|
#
|
|
# 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
|
|
|
|
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
|
|
COPY entrypoint.sh /usr/local/sbin/entrypoint.sh
|
|
RUN chmod +x /usr/local/sbin/fetch-artifact.sh /usr/local/sbin/entrypoint.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", "--", "/usr/local/sbin/entrypoint.sh"]
|
|
CMD ["hbbs"]
|