31 lines
1021 B
Docker
31 lines
1021 B
Docker
FROM rust:1.92 AS builder
|
|
WORKDIR /app
|
|
COPY . .
|
|
RUN cargo build --release -p presentation -p worker -p playout
|
|
|
|
# Presentation image
|
|
FROM debian:bookworm-slim AS presentation
|
|
WORKDIR /app
|
|
RUN apt-get update && apt-get install -y --no-install-recommends libssl3 ca-certificates && rm -rf /var/lib/apt/lists/*
|
|
COPY --from=builder /app/target/release/k-tv .
|
|
RUN mkdir -p /app/data
|
|
EXPOSE 3000
|
|
CMD ["./k-tv"]
|
|
|
|
# Worker image
|
|
FROM debian:bookworm-slim AS worker
|
|
WORKDIR /app
|
|
RUN apt-get update && apt-get install -y --no-install-recommends libssl3 ca-certificates ffmpeg && rm -rf /var/lib/apt/lists/*
|
|
COPY --from=builder /app/target/release/k-tv-worker .
|
|
RUN mkdir -p /app/data
|
|
CMD ["./k-tv-worker"]
|
|
|
|
# Playout image
|
|
FROM debian:bookworm-slim AS playout
|
|
WORKDIR /app
|
|
RUN apt-get update && apt-get install -y --no-install-recommends libssl3 ca-certificates ffmpeg && rm -rf /var/lib/apt/lists/*
|
|
COPY --from=builder /app/target/release/k-tv-playout .
|
|
RUN mkdir -p /app/data /tmp/k-tv-playout
|
|
EXPOSE 9090
|
|
CMD ["./k-tv-playout"]
|