forked from avstack/gst-meet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
executable file
·23 lines (18 loc) · 907 Bytes
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
FROM docker.io/library/alpine:3.18.2 AS builder
RUN apk --no-cache --update upgrade --ignore alpine-baselayout \
&& apk --no-cache add build-base gstreamer-dev gst-plugins-base-dev libnice-dev openssl-dev cargo
COPY . .
RUN cargo build --release -p gst-meet
# Continue the build in the same stage
COPY ./rust-webserver .
WORKDIR ./rust-webserver
RUN cargo build --release -p rust-webserver
# Create the final image
FROM docker.io/library/alpine:3.18.2
RUN apk --update --no-cache upgrade --ignore alpine-baselayout \
&& apk --no-cache add openssl gstreamer gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav libnice libnice-gstreamer
# Copy the built binaries from the previous stage
COPY --from=builder target/release/gst-meet /usr/local/bin/
COPY --from=builder rust-webserver/target/release/rust-webserver /usr/local/bin/
# Set the entrypoint
ENTRYPOINT ["/usr/local/bin/rust-webserver"]