2023-11-15 21:33:05 +01:00
|
|
|
############################
|
|
|
|
# Docker build environment #
|
|
|
|
############################
|
|
|
|
|
2024-11-10 16:35:57 +01:00
|
|
|
FROM node:22.11.0-bookworm-slim AS build
|
2023-12-12 20:11:36 -05:00
|
|
|
|
|
|
|
# Upgrade all packages and install dependencies
|
|
|
|
RUN apt-get update \
|
|
|
|
&& apt-get upgrade -y
|
|
|
|
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
|
|
python3 \
|
|
|
|
build-essential \
|
2024-02-14 06:41:06 +11:00
|
|
|
cmake \
|
2024-05-27 18:03:58 -04:00
|
|
|
curl \
|
|
|
|
ca-certificates \
|
2023-12-12 20:11:36 -05:00
|
|
|
&& apt clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
2023-11-15 21:33:05 +01:00
|
|
|
|
|
|
|
WORKDIR /build
|
|
|
|
|
|
|
|
COPY . .
|
|
|
|
|
2023-12-12 20:11:36 -05:00
|
|
|
# Build Public Pool using NPM
|
|
|
|
RUN npm i && npm run build
|
2023-11-15 21:33:05 +01:00
|
|
|
|
|
|
|
############################
|
|
|
|
# Docker final environment #
|
|
|
|
############################
|
|
|
|
|
2024-11-10 16:35:57 +01:00
|
|
|
FROM node:22.11.0-bookworm-slim
|
2023-11-15 21:33:05 +01:00
|
|
|
|
2023-12-12 20:11:36 -05:00
|
|
|
# Expose ports for Stratum and Bitcoin RPC
|
|
|
|
EXPOSE 3333 3334 8332
|
2023-11-15 21:33:05 +01:00
|
|
|
|
|
|
|
WORKDIR /public-pool
|
|
|
|
|
2023-12-12 20:11:36 -05:00
|
|
|
# Copy built binaries into the final image
|
2023-11-15 21:33:05 +01:00
|
|
|
COPY --from=build /build .
|
2023-11-28 14:07:57 +01:00
|
|
|
#COPY .env.example .env
|
2023-11-15 21:33:05 +01:00
|
|
|
|
|
|
|
CMD ["/usr/local/bin/node", "dist/main"]
|