Dockerfile.strfry raw

   1  FROM ubuntu:22.04 AS builder
   2  
   3  ENV DEBIAN_FRONTEND=noninteractive
   4  
   5  # Install build dependencies
   6  RUN apt-get update && apt-get install -y \
   7      git \
   8      build-essential \
   9      liblmdb-dev \
  10      libsecp256k1-dev \
  11      pkg-config \
  12      libtool \
  13      autoconf \
  14      automake \
  15      && rm -rf /var/lib/apt/lists/*
  16  
  17  WORKDIR /build
  18  COPY . .
  19  
  20  # Build strfry
  21  RUN make setup-golpe && \
  22      make -j$(nproc)
  23  
  24  FROM ubuntu:22.04
  25  RUN apt-get update && apt-get install -y \
  26      liblmdb0 \
  27      libsecp256k1-0 \
  28      curl \
  29      && rm -rf /var/lib/apt/lists/*
  30  
  31  WORKDIR /app
  32  COPY --from=builder /build/strfry /app/
  33  RUN mkdir -p /data
  34  
  35  EXPOSE 8080
  36  ENV STRFRY_DB_PATH=/data/strfry.lmdb
  37  ENV STRFRY_RELAY_PORT=8080
  38  
  39  HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
  40    CMD curl -f http://localhost:8080 || exit 1
  41  
  42  CMD ["/app/strfry", "relay"]
  43