-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
107 lines (69 loc) · 1.76 KB
/
Dockerfile
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
FROM node:18-slim as builder
ARG KV_DRIVER
ENV KV_DRIVER=$KV_DRIVER
ARG KV_REST_API_URL
ENV KV_REST_API_URL=$KV_REST_API_URL
ARG KV_REST_API_TOKEN
ENV KV_REST_API_TOKEN=$KV_REST_API_TOKEN
ARG GITHUB_REPO_DISPATCH_URL
ENV GITHUB_REPO_DISPATCH_URL=$GITHUB_REPO_DISPATCH_URL
ARG GITHUB_TOKEN
ENV GITHUB_TOKEN=$GITHUB_TOKEN
ARG REDIS_URL
ENV REDIS_URL=$REDIS_URL
ARG CF_ACCOUNT_ID
ENV CF_ACCOUNT_ID=$CF_ACCOUNT_ID
ARG CF_NAMESPACE_ID
ENV CF_NAMESPACE_ID=$CF_NAMESPACE_ID
ARG CF_API_TOKEN
ENV CF_API_TOKEN=$CF_API_TOKEN
ARG STARGRAM_ID
ENV STARGRAM_ID=$STARGRAM_ID
ARG VAPID_PUBLIC_KEY
ENV VAPID_PUBLIC_KEY=$VAPID_PUBLIC_KEY
ARG VAPID_PRIVATE_KEY
ENV VAPID_PRIVATE_KEY=$VAPID_PRIVATE_KEY
ARG CRYPTION_C1
ENV CRYPTION_C1=$CRYPTION_C1
ARG CRYPTION_C2
ENV CRYPTION_C2=$CRYPTION_C2
RUN npm i -g pnpm
ADD ./ /app
WORKDIR /app
RUN pnpm i
RUN pnpm build:nuxt
FROM node:18-slim
RUN mkdir /app
COPY --from=builder /app/server/nuxt3/.output /app/
WORKDIR /app
ARG KV_DRIVER
ENV KV_DRIVER=$KV_DRIVER
ARG KV_REST_API_URL
ENV KV_REST_API_URL=$KV_REST_API_URL
ARG KV_REST_API_TOKEN
ENV KV_REST_API_TOKEN=$KV_REST_API_TOKEN
ARG GITHUB_REPO_DISPATCH_URL
ENV GITHUB_REPO_DISPATCH_URL=$GITHUB_REPO_DISPATCH_URL
ARG GITHUB_TOKEN
ENV GITHUB_TOKEN=$GITHUB_TOKEN
ARG REDIS_URL
ENV REDIS_URL=$REDIS_URL
ARG CF_ACCOUNT_ID
ENV CF_ACCOUNT_ID=$CF_ACCOUNT_ID
ARG CF_NAMESPACE_ID
ENV CF_NAMESPACE_ID=$CF_NAMESPACE_ID
ARG CF_API_TOKEN
ENV CF_API_TOKEN=$CF_API_TOKEN
ARG STARGRAM_ID
ENV STARGRAM_ID=$STARGRAM_ID
ARG VAPID_PUBLIC_KEY
ENV VAPID_PUBLIC_KEY=$VAPID_PUBLIC_KEY
ARG VAPID_PRIVATE_KEY
ENV VAPID_PRIVATE_KEY=$VAPID_PRIVATE_KEY
ARG CRYPTION_C1
ENV CRYPTION_C1=$CRYPTION_C1
ARG CRYPTION_C2
ENV CRYPTION_C2=$CRYPTION_C2
EXPOSE 3000
ENV NODE_ENV=production
CMD ["node", "/app/server/index.mjs"]