-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile.trixie
More file actions
50 lines (39 loc) · 1.15 KB
/
Dockerfile.trixie
File metadata and controls
50 lines (39 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
ARG RUST_VERSION=1.93.0
FROM rust:${RUST_VERSION} AS rust-base
FROM dalibo/buildpack:trixie
ARG PGRX_VERSION=0.18.0
# Copy Rust toolchain from official image
COPY --from=rust-base /usr/local/cargo /usr/local/cargo
COPY --from=rust-base /usr/local/rustup /usr/local/rustup
# Copy nfpm binary
COPY --from=goreleaser/nfpm:latest /usr/bin/nfpm /usr/bin/nfpm
# Set environment variables for Rust
ENV CARGO_HOME=/usr/local/cargo
ENV RUSTUP_HOME=/usr/local/rustup
ENV PATH=/usr/local/cargo/bin:$PATH
RUN set -ex; \
apt-get update -y; \
apt-get install -y --no-install-recommends \
build-essential \
clang \
libclang-dev \
libreadline-dev \
zlib1g-dev \
flex \
bison \
libxml2-dev \
libxslt-dev \
libssl-dev \
libxml2-utils \
xsltproc \
ccache \
pkg-config \
gettext \
; \
apt-get clean; \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*; \
:
RUN rustup self update \
&& rustup component add clippy llvm-tools-preview \
&& cargo install grcov cargo-cyclonedx uv \
&& cargo install --locked --version "${PGRX_VERSION}" cargo-pgrx