1
- # syntax=docker/dockerfile:1.4
2
- ARG CARDANO_CLI_VERSION="${CARDANO_CLI_VERSION:-10.8.0.0}"
3
- ARG UV_VERSION="${UV_VERSION:-0.6.11}"
4
-
5
1
# Blink Labs images are built from source on Debian Bookworm
6
2
FROM ghcr.io/blinklabs-io/cardano-node:latest AS cardano-node
7
3
8
- FROM ghcr.io/astral-sh/uv:${UV_VERSION} AS uv
9
-
10
- FROM debian:stable-slim@sha256:377ddc2a20fe8632a49b69dcfff10fccbd5b4f0b8c2d593420a6a5e03070dfa1
4
+ FROM ubuntu
11
5
12
6
USER root
13
7
# Install packages required in build stage
8
+
14
9
RUN apt update && \
15
10
apt install -y --no-install-recommends \
16
11
ca-certificates \
17
12
curl \
18
13
git \
19
14
tar \
20
15
tree \
16
+ python3 \
17
+ python3-pip \
21
18
jq
22
- # Copy uv from image
23
- COPY --from=uv --chown=root:root /uv /usr/local/bin/uv
24
19
20
+ # Install uv (fast Python package manager)
21
+ RUN python3 -m pip install --break-system-packages uv
25
22
# Create cardano-node source directory
26
23
RUN install --directory --owner=root --group=root --mode=0755 /usr/local/src/cardano-node
27
24
@@ -31,12 +28,14 @@ RUN git clone --branch main https://github.com/cardano-foundation/testnet-genera
31
28
32
29
# Download testnet-generation-tool dependencies
33
30
WORKDIR /usr/local/src/testnet-generation-tool
31
+ # dockerfile
32
+ RUN uv sync
34
33
# Copy binary from image
35
34
COPY --from=cardano-node --chown=root:root /usr/local/bin/ ./cardano-node/bin/
36
35
# Copy libsecp256k1 (also debian:bookwork-slim AKA stable-slim)
37
36
COPY --from=cardano-node --chown=root:root /usr/local/lib/ /usr/lib/
38
- COPY --from=cardano-node --chown=root:root /usr/lib/ /usr/ lib/
39
- RUN uv sync
37
+ COPY --from=cardano-node --chown=root:root /usr/lib/ /tmp/cardano-node/local- lib/
38
+ RUN cp -a --update=none /tmp/cardano-node/local-lib/. /usr/lib/
40
39
41
40
COPY configurator.sh /
42
41
RUN chmod 0755 /configurator.sh
0 commit comments