-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathDockerfile
88 lines (76 loc) · 2.9 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
FROM dappforce/subsocial-base-polkaverse as builder
ARG GH_GA_ID
ARG GH_CONNECTION_KIND
ARG GH_APP_KIND
ARG GH_APP_BASE_URL
ARG GH_HCAPTCHA_SITE_KEY
ARG GH_AMP_ID
ARG GH_OFFCHAIN_SIGNER_URL
ARG GH_SELLER_CLIENT_ID
ARG GH_SELLER_TOKEN_SIGNER
ARG GH_NEXT_PUBLIC_DATAHUB_QUERY_URL
ARG GH_NEXT_PUBLIC_DATAHUB_SUBSCRIPTION_URL
ARG GH_NEXT_PUBLIC_APP_ID
ARG GH_DATAHUB_QUEUE_URL
ARG GH_DATAHUB_QUEUE_TOKEN
ARG GH_SERVER_MNEMONIC
ARG GH_NEXT_PUBLIC_ENABLE_MAINTENANCE_PAGE
ENV NEXT_PUBLIC_GA_ID=${GH_GA_ID} \
NEXT_PUBLIC_APP_KIND=${GH_APP_KIND} \
NEXT_PUBLIC_APP_BASE_URL=${GH_APP_BASE_URL} \
NEXT_PUBLIC_HCAPTCHA_SITE_KEY=${GH_HCAPTCHA_SITE_KEY} \
NEXT_PUBLIC_AMP_ID=${GH_AMP_ID} \
NEXT_PUBLIC_OFFCHAIN_SIGNER_URL=${GH_OFFCHAIN_SIGNER_URL} \
NEXT_PUBLIC_CONNECTION_KIND=${GH_CONNECTION_KIND} \
SELLER_CLIENT_ID=${GH_SELLER_CLIENT_ID} \
SELLER_CLIENT_TOKEN_SIGNER=${GH_SELLER_TOKEN_SIGNER} \
NEXT_PUBLIC_DATAHUB_QUERY_URL=${GH_NEXT_PUBLIC_DATAHUB_QUERY_URL} \
NEXT_PUBLIC_DATAHUB_SUBSCRIPTION_URL=${GH_NEXT_PUBLIC_DATAHUB_SUBSCRIPTION_URL} \
NEXT_PUBLIC_APP_ID=${GH_NEXT_PUBLIC_APP_ID} \
DATAHUB_QUEUE_URL=${GH_DATAHUB_QUEUE_URL} \
DATAHUB_QUEUE_TOKEN=${GH_DATAHUB_QUEUE_TOKEN} \
SERVER_MNEMONIC=${GH_SERVER_MNEMONIC} \
NEXT_PUBLIC_ENABLE_MAINTENANCE_PAGE=${GH_NEXT_PUBLIC_ENABLE_MAINTENANCE_PAGE}
COPY package.json yarn.lock* ./
RUN yarn install --no-optional
WORKDIR /opt/subsocial/app
COPY . .
RUN yarn
COPY ci.env .env
RUN NODE_ENV=production yarn build
FROM gcr.io/distroless/nodejs:16 AS runner
ARG GH_GA_ID
ARG GH_CONNECTION_KIND
ARG GH_APP_KIND
ARG GH_APP_BASE_URL
ARG GH_HCAPTCHA_SITE_KEY
ARG GH_AMP_ID
ARG GH_OFFCHAIN_SIGNER_URL
ARG GH_SELLER_CLIENT_ID
ARG GH_SELLER_TOKEN_SIGNER
ARG GH_NEXT_PUBLIC_DATAHUB_QUERY_URL
ARG GH_NEXT_PUBLIC_DATAHUB_SUBSCRIPTION_URL
ARG GH_NEXT_PUBLIC_APP_ID
ARG GH_DATAHUB_QUEUE_URL
ARG GH_DATAHUB_QUEUE_TOKEN
ARG GH_SERVER_MNEMONIC
ARG GH_NEXT_PUBLIC_ENABLE_MAINTENANCE_PAGE
ENV NEXT_PUBLIC_GA_ID=${GH_GA_ID} \
NEXT_PUBLIC_APP_KIND=${GH_APP_KIND} \
NEXT_PUBLIC_APP_ID=${GH_APP_ID} \
NEXT_PUBLIC_APP_BASE_URL=${GH_APP_BASE_URL} \
NEXT_PUBLIC_AMP_ID=${GH_AMP_ID} \
NEXT_PUBLIC_OFFCHAIN_SIGNER_URL=${GH_OFFCHAIN_SIGNER_URL} \
NEXT_PUBLIC_CONNECTION_KIND=${GH_CONNECTION_KIND} \
SELLER_CLIENT_ID=${GH_SELLER_CLIENT_ID} \
SELLER_CLIENT_TOKEN_SIGNER=${GH_SELLER_TOKEN_SIGNER} \
NEXT_PUBLIC_DATAHUB_QUERY_URL=${GH_NEXT_PUBLIC_DATAHUB_QUERY_URL} \
NEXT_PUBLIC_DATAHUB_SUBSCRIPTION_URL=${GH_NEXT_PUBLIC_DATAHUB_SUBSCRIPTION_URL} \
NEXT_PUBLIC_APP_ID=${GH_NEXT_PUBLIC_APP_ID} \
DATAHUB_QUEUE_URL=${GH_DATAHUB_QUEUE_URL} \
DATAHUB_QUEUE_TOKEN=${GH_DATAHUB_QUEUE_TOKEN} \
SERVER_MNEMONIC=${GH_SERVER_MNEMONIC} \
NEXT_PUBLIC_ENABLE_MAINTENANCE_PAGE=${GH_NEXT_PUBLIC_ENABLE_MAINTENANCE_PAGE}
WORKDIR /opt/subsocial/app
COPY --from=builder /opt/subsocial/app .
CMD [ "node_modules/.bin/next", "start", "-p", "3003" ]