-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathDockerfile
More file actions
36 lines (29 loc) · 1.24 KB
/
Dockerfile
File metadata and controls
36 lines (29 loc) · 1.24 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
FROM node:24-alpine AS builder
WORKDIR /app
COPY . .
RUN apk update && apk add git && rm -rf node_modules && npm install && npm run docs:build
FROM alpine AS downloader
RUN apk add --no-cache curl jq
RUN set -eux; \
mkdir -p /download; \
cd /download; \
curl -s "https://api.github.com/repos/donknap/dpanel/releases/latest" | \
jq -r '.assets[].browser_download_url' | \
while read url; do \
case "$url" in \
*dpanel-amd64.fpk|*dpanel-desktop-amd64-installer.exe) \
echo "📥 Downloading: $(basename "$url")"; \
curl -sL -O "$url" ;; \
esac; \
done
FROM nginx:1.27
COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf
COPY ./storage /usr/share/nginx/html/storage
COPY ./storage/image/dpanel.ico /usr/share/nginx/html/favicon.ico
COPY ./storage/ads.txt /usr/share/nginx/html/ads.txt
COPY ./storage/quick.sh /usr/share/nginx/html/quick.sh
COPY ./storage/quick-v1.sh /usr/share/nginx/html/quick-v1.sh
COPY ./storage/quick.ps1 /usr/share/nginx/html/quick.ps1
RUN tar czvf /usr/share/nginx/html/install.tar -C /usr/share/nginx/html/storage/install ./install.sh ./lang && \
mkdir -p /usr/share/nginx/html/download/
COPY --from=builder /app/.vitepress/dist /usr/share/nginx/html/