From 6211d1521d12df5cf47ed6376ec62ce884d424c8 Mon Sep 17 00:00:00 2001 From: m1k1o Date: Tue, 9 Mar 2021 12:21:11 +0100 Subject: [PATCH] add Dockerfile debian --- Dockerfile.debian | 52 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Dockerfile.debian diff --git a/Dockerfile.debian b/Dockerfile.debian new file mode 100644 index 00000000..3ac5aaec --- /dev/null +++ b/Dockerfile.debian @@ -0,0 +1,52 @@ +# Neolink Docker image build scripts +# Copyright (c) 2020 George Hilliard +# SPDX-License-Identifier: AGPL-3.0-only + +FROM docker.io/rust:buster AS build +MAINTAINER thirtythreeforty@gmail.com + +ENV DEBIAN_FRONTEND=noninteractive +RUN set -eux; \ + apt-get update; \ + apt-get install -y --no-install-recommends \ + build-essential \ + musl-dev gcc \ + libgstrtspserver-1.0-dev \ + libgstreamer1.0-dev \ + libgtk2.0-dev \ + libglib2.0-dev; \ + apt-get clean -y; \ + rm -rf /var/lib/apt/lists/* /var/cache/apt/* + +# Use static linking to work around https://github.com/rust-lang/rust/pull/58575 +ENV RUSTFLAGS='-C target-feature=-crt-static' + +WORKDIR /usr/local/src/neolink + +# Build the main program +COPY . /usr/local/src/neolink +RUN cargo build --release + +# Create the release container. Match the base OS used to build +FROM debian:buster-slim + +ENV DEBIAN_FRONTEND=noninteractive +RUN set -eux; \ + apt-get update; \ + apt-get install -y --no-install-recommends \ + musl-dev \ + libgstrtspserver-1.0-0 \ + libgstreamer1.0-0 \ + gstreamer1.0-plugins-good \ + gstreamer1.0-plugins-bad; \ + apt-get clean -y; \ + rm -rf /var/lib/apt/lists/* /var/cache/apt/* + +COPY --from=build \ + /usr/local/src/neolink/target/release/neolink \ + /usr/local/bin/neolink + +ENTRYPOINT [ "/usr/local/bin/neolink" ] +CMD [ "--config", "/etc/neolink.toml" ] + +EXPOSE 8554