0.1.1
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
FROM --platform=linux/amd64 rust:1-bookworm AS builder
|
||||
|
||||
RUN dpkg --add-architecture arm64 \
|
||||
&& apt-get update && apt-get install -y \
|
||||
gcc-aarch64-linux-gnu \
|
||||
libopus-dev:arm64 \
|
||||
libsqlite3-dev:arm64 \
|
||||
libc6:arm64 \
|
||||
ca-certificates \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN rustup target add aarch64-unknown-linux-gnu
|
||||
|
||||
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc \
|
||||
PKG_CONFIG_ALLOW_CROSS=1 \
|
||||
PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig \
|
||||
RUSTFLAGS=""
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY Cargo.toml Cargo.lock ./
|
||||
COPY crates/server/Cargo.toml crates/server/Cargo.toml
|
||||
COPY crates/entity/Cargo.toml crates/entity/Cargo.toml
|
||||
COPY crates/migration/Cargo.toml crates/migration/Cargo.toml
|
||||
|
||||
RUN mkdir -p crates/server/src crates/entity/src crates/migration/src \
|
||||
&& echo "fn main() {}" > crates/server/src/main.rs \
|
||||
&& echo "" > crates/entity/src/lib.rs \
|
||||
&& echo "" > crates/migration/src/lib.rs
|
||||
|
||||
RUN cargo build --release --target aarch64-unknown-linux-gnu --bin rtmp-to-whip
|
||||
|
||||
COPY crates crates
|
||||
RUN touch crates/server/src/main.rs crates/entity/src/lib.rs crates/migration/src/lib.rs \
|
||||
&& cargo build --release --target aarch64-unknown-linux-gnu --bin rtmp-to-whip \
|
||||
&& aarch64-linux-gnu-strip target/aarch64-unknown-linux-gnu/release/rtmp-to-whip
|
||||
|
||||
RUN mkdir /deps \
|
||||
&& find /usr/lib/aarch64-linux-gnu -name 'libopus.so*' -exec cp --parents {} /deps \; \
|
||||
&& find /usr/lib/aarch64-linux-gnu -name 'libsqlite3.so*' -exec cp --parents {} /deps \; \
|
||||
&& find /lib/aarch64-linux-gnu -name 'libc*' -exec cp --parents {} /deps \; \
|
||||
&& find /lib/aarch64-linux-gnu -name 'libm*' -exec cp --parents {} /deps \; \
|
||||
&& find /lib/aarch64-linux-gnu -name 'libpthread*' -exec cp --parents {} /deps \; \
|
||||
&& find /lib/aarch64-linux-gnu -name 'libdl*' -exec cp --parents {} /deps \; \
|
||||
&& find /lib/aarch64-linux-gnu -name 'libgcc_s*' -exec cp --parents {} /deps \; \
|
||||
&& cp --parents /lib/ld-linux-aarch64.so.1 /deps
|
||||
|
||||
FROM --platform=linux/arm64/v8 scratch
|
||||
|
||||
COPY --from=builder /deps /
|
||||
COPY --from=builder /etc/ssl/certs /etc/ssl/certs
|
||||
COPY --from=builder /app/target/aarch64-unknown-linux-gnu/release/rtmp-to-whip /rtmp-to-whip
|
||||
|
||||
EXPOSE 1935
|
||||
EXPOSE 3000
|
||||
EXPOSE 6969/udp
|
||||
|
||||
CMD ["/rtmp-to-whip"]
|
||||
Reference in New Issue
Block a user