-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathDockerfile
More file actions
133 lines (124 loc) · 4.01 KB
/
Dockerfile
File metadata and controls
133 lines (124 loc) · 4.01 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
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
FROM node:lts AS builder
WORKDIR /app
ENV NODE_ENV=production
ENV PORT=3000
ENV HOSTNAME=0.0.0.0
ARG APP_BASE_URL
ARG TELEGRAM_BOT_TOKEN
ARG TELEGRAM_WEBHOOK_SECRET
ARG WHATSAPP_ACCESS_TOKEN
ARG WHATSAPP_PHONE_NUMBER_ID
ARG WHATSAPP_VERIFY_TOKEN
ARG QSTASH_URL
ARG QSTASH_TOKEN
ARG QSTASH_NEXT_SIGNING_KEY
ARG QSTASH_CURRENT_SIGNING_KEY
ARG UPSTASH_REDIS_REST_URL
ARG UPSTASH_REDIS_REST_TOKEN
ARG COMPOSIO_API_KEY
ARG COMPOSIO_CALLBACK_URL
ARG FAST_MODEL_NAME
ARG SMART_MODEL_NAME
ARG MODEL_TEMPERATURE
ARG TELEGRAM_ALLOWED_USERS
ARG WHATSAPP_ALLOWED_NUMBERS
ARG SMS_ALLOWED_NUMBERS
ARG TELEGRAM_STREAMING
ARG TELEGRAM_STREAM_EDIT_THROTTLE_MS
ARG TELEGRAM_TYPING_INTERVAL_MS
ARG TELEGRAM_STREAM_CHUNK_CHARS
ARG SSH_HOST
ARG SSH_USER
ARG SSH_PRIVATE_KEY_B64
ENV APP_BASE_URL=$APP_BASE_URL
ENV TELEGRAM_BOT_TOKEN=$TELEGRAM_BOT_TOKEN
ENV TELEGRAM_WEBHOOK_SECRET=$TELEGRAM_WEBHOOK_SECRET
ENV WHATSAPP_ACCESS_TOKEN=$WHATSAPP_ACCESS_TOKEN
ENV WHATSAPP_PHONE_NUMBER_ID=$WHATSAPP_PHONE_NUMBER_ID
ENV WHATSAPP_VERIFY_TOKEN=$WHATSAPP_VERIFY_TOKEN
ENV QSTASH_URL=$QSTASH_URL
ENV QSTASH_TOKEN=$QSTASH_TOKEN
ENV QSTASH_NEXT_SIGNING_KEY=$QSTASH_NEXT_SIGNING_KEY
ENV QSTASH_CURRENT_SIGNING_KEY=$QSTASH_CURRENT_SIGNING_KEY
ENV UPSTASH_REDIS_REST_URL=$UPSTASH_REDIS_REST_URL
ENV UPSTASH_REDIS_REST_TOKEN=$UPSTASH_REDIS_REST_TOKEN
ENV COMPOSIO_API_KEY=$COMPOSIO_API_KEY
ENV COMPOSIO_CALLBACK_URL=$COMPOSIO_CALLBACK_URL
ENV FAST_MODEL_NAME=$FAST_MODEL_NAME
ENV SMART_MODEL_NAME=$SMART_MODEL_NAME
ENV MODEL_TEMPERATURE=$MODEL_TEMPERATURE
ENV TELEGRAM_ALLOWED_USERS=$TELEGRAM_ALLOWED_USERS
ENV WHATSAPP_ALLOWED_NUMBERS=$WHATSAPP_ALLOWED_NUMBERS
ENV SMS_ALLOWED_NUMBERS=$SMS_ALLOWED_NUMBERS
ENV TELEGRAM_STREAMING=$TELEGRAM_STREAMING
ENV TELEGRAM_STREAM_EDIT_THROTTLE_MS=$TELEGRAM_STREAM_EDIT_THROTTLE_MS
ENV TELEGRAM_TYPING_INTERVAL_MS=$TELEGRAM_TYPING_INTERVAL_MS
ENV TELEGRAM_STREAM_CHUNK_CHARS=$TELEGRAM_STREAM_CHUNK_CHARS
ENV SSH_HOST=$SSH_HOST
ENV SSH_USER=$SSH_USER
ENV SSH_PRIVATE_KEY_B64=$SSH_PRIVATE_KEY_B64
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
FROM node:lts
WORKDIR /app
ARG APP_BASE_URL
ARG TELEGRAM_BOT_TOKEN
ARG TELEGRAM_WEBHOOK_SECRET
ARG WHATSAPP_ACCESS_TOKEN
ARG WHATSAPP_PHONE_NUMBER_ID
ARG WHATSAPP_VERIFY_TOKEN
ARG QSTASH_URL
ARG QSTASH_TOKEN
ARG QSTASH_NEXT_SIGNING_KEY
ARG QSTASH_CURRENT_SIGNING_KEY
ARG UPSTASH_REDIS_REST_URL
ARG UPSTASH_REDIS_REST_TOKEN
ARG COMPOSIO_API_KEY
ARG COMPOSIO_CALLBACK_URL
ARG FAST_MODEL_NAME
ARG SMART_MODEL_NAME
ARG MODEL_TEMPERATURE
ARG TELEGRAM_ALLOWED_USERS
ARG WHATSAPP_ALLOWED_NUMBERS
ARG SMS_ALLOWED_NUMBERS
ARG TELEGRAM_STREAMING
ARG TELEGRAM_STREAM_EDIT_THROTTLE_MS
ARG TELEGRAM_TYPING_INTERVAL_MS
ARG TELEGRAM_STREAM_CHUNK_CHARS
ARG SSH_HOST
ARG SSH_USER
ARG SSH_PRIVATE_KEY_B64
ENV APP_BASE_URL=$APP_BASE_URL
ENV TELEGRAM_BOT_TOKEN=$TELEGRAM_BOT_TOKEN
ENV TELEGRAM_WEBHOOK_SECRET=$TELEGRAM_WEBHOOK_SECRET
ENV WHATSAPP_ACCESS_TOKEN=$WHATSAPP_ACCESS_TOKEN
ENV WHATSAPP_PHONE_NUMBER_ID=$WHATSAPP_PHONE_NUMBER_ID
ENV WHATSAPP_VERIFY_TOKEN=$WHATSAPP_VERIFY_TOKEN
ENV QSTASH_URL=$QSTASH_URL
ENV QSTASH_TOKEN=$QSTASH_TOKEN
ENV QSTASH_NEXT_SIGNING_KEY=$QSTASH_NEXT_SIGNING_KEY
ENV QSTASH_CURRENT_SIGNING_KEY=$QSTASH_CURRENT_SIGNING_KEY
ENV UPSTASH_REDIS_REST_URL=$UPSTASH_REDIS_REST_URL
ENV UPSTASH_REDIS_REST_TOKEN=$UPSTASH_REDIS_REST_TOKEN
ENV COMPOSIO_API_KEY=$COMPOSIO_API_KEY
ENV COMPOSIO_CALLBACK_URL=$COMPOSIO_CALLBACK_URL
ENV FAST_MODEL_NAME=$FAST_MODEL_NAME
ENV SMART_MODEL_NAME=$SMART_MODEL_NAME
ENV MODEL_TEMPERATURE=$MODEL_TEMPERATURE
ENV TELEGRAM_ALLOWED_USERS=$TELEGRAM_ALLOWED_USERS
ENV WHATSAPP_ALLOWED_NUMBERS=$WHATSAPP_ALLOWED_NUMBERS
ENV SMS_ALLOWED_NUMBERS=$SMS_ALLOWED_NUMBERS
ENV TELEGRAM_STREAMING=$TELEGRAM_STREAMING
ENV TELEGRAM_STREAM_EDIT_THROTTLE_MS=$TELEGRAM_STREAM_EDIT_THROTTLE_MS
ENV TELEGRAM_TYPING_INTERVAL_MS=$TELEGRAM_TYPING_INTERVAL_MS
ENV TELEGRAM_STREAM_CHUNK_CHARS=$TELEGRAM_STREAM_CHUNK_CHARS
ENV SSH_HOST=$SSH_HOST
ENV SSH_USER=$SSH_USER
ENV SSH_PRIVATE_KEY_B64=$SSH_PRIVATE_KEY_B64
COPY package*.json ./
RUN npm install --omit=dev
COPY --from=builder /app ./
EXPOSE 3000
CMD ["npm", "start"]