clover / Dockerfile
api-ix's picture
Create Dockerfile
2c72272 verified
Raw
History Blame Contribute Delete
1.1 kB
FROM node:24-alpine
###############################################################################
# 1. Install only necessary packages
###############################################################################
RUN apk add --no-cache \
git \
bash \
build-base \
curl \
wget \
unzip \
ca-certificates
###############################################################################
# 2. Startup script (clone repo at run-time)
###############################################################################
COPY <<'start.sh' /usr/local/bin/start.sh
#!/usr/bin/env bash
set -e
echo "Cloning $REPO …"
git clone --depth 1 "$REPO" /tmp/app
cd /tmp/app
# Install dependencies without devDependencies
npm install --omit=dev
chmod -R 777 /tmp/app
exec npm start
start.sh
RUN chmod +x /usr/local/bin/start.sh
###############################################################################
# 3. Container metadata
###############################################################################
EXPOSE 7860
CMD ["/usr/local/bin/start.sh"]