Dockerfile: build ipx alone now the workspace has three crates (#204)
The dependency layer stubs every member, since cargo reads them all, and builds -p ipx so the directory is not compiled into ipx's image. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
10
Dockerfile
10
Dockerfile
@@ -16,15 +16,17 @@ RUN npm ci --omit=dev
|
|||||||
COPY Cargo.toml Cargo.lock ./
|
COPY Cargo.toml Cargo.lock ./
|
||||||
COPY crates/ipx/Cargo.toml crates/ipx/
|
COPY crates/ipx/Cargo.toml crates/ipx/
|
||||||
COPY crates/feed/Cargo.toml crates/feed/
|
COPY crates/feed/Cargo.toml crates/feed/
|
||||||
RUN mkdir -p crates/ipx/src crates/feed/src \
|
COPY crates/directory/Cargo.toml crates/directory/
|
||||||
|
RUN mkdir -p crates/ipx/src crates/feed/src crates/directory/src \
|
||||||
&& echo 'fn main(){}' > crates/ipx/src/main.rs && touch crates/feed/src/lib.rs \
|
&& echo 'fn main(){}' > crates/ipx/src/main.rs && touch crates/feed/src/lib.rs \
|
||||||
&& cargo build --release --locked \
|
&& echo 'fn main(){}' > crates/directory/src/main.rs && touch crates/directory/src/lib.rs \
|
||||||
&& rm -rf crates/ipx/src crates/feed/src
|
&& cargo build --release --locked -p ipx \
|
||||||
|
&& rm -rf crates/ipx/src crates/feed/src crates/directory/src
|
||||||
|
|
||||||
COPY crates ./crates
|
COPY crates ./crates
|
||||||
COPY web ./web
|
COPY web ./web
|
||||||
# cargo skips a rebuild if mtimes look untouched; make sure it does not.
|
# cargo skips a rebuild if mtimes look untouched; make sure it does not.
|
||||||
RUN touch crates/ipx/src/main.rs crates/feed/src/lib.rs && cargo build --release --locked
|
RUN touch crates/ipx/src/main.rs crates/feed/src/lib.rs && cargo build --release --locked -p ipx
|
||||||
|
|
||||||
FROM debian:trixie-slim
|
FROM debian:trixie-slim
|
||||||
# ffmpeg is DeadAir's (#171): it finds the silences and copies the frames kept. Debian's adds
|
# ffmpeg is DeadAir's (#171): it finds the silences and copies the frames kept. Debian's adds
|
||||||
|
|||||||
Reference in New Issue
Block a user