-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathDogefile
More file actions
129 lines (120 loc) · 3.63 KB
/
Dogefile
File metadata and controls
129 lines (120 loc) · 3.63 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
---
name: ChatFAQ
# for now, we share the database cluster between envs
databases:
- name: psql
cluster_name: 'chatfaq-psql-{{ production("dev", default="dev") }}'
db_name: "{{ deployment_key }}"
db_user: "{{ deployment_key }}"
engine: pg
version: "15"
- name: redis
cluster_name: 'chatfaq-redis-{{ production("dev", default="dev") }}'
engine: redis
version: "7"
env:
- name: django
variables:
BASE_URL: '{{ APP_URL }}'
SECRET_KEY: '{{ secret("SECRET_KEY") }}'
SENTRY_ENVIRONMENT: "{{ back.component_key }}"
ENVIRONMENT: "{{ deployment_key }}"
DATABASE_URL: "{{ psql.DATABASE_URL }}"
AWS_ACCESS_KEY_ID: '{{ secret("AWS_ACCESS_KEY_ID") }}'
AWS_SECRET_ACCESS_KEY: '{{ secret("AWS_SECRET_ACCESS_KEY") }}'
AWS_STORAGE_BUCKET_NAME: '{{ get("AWS_STORAGE_BUCKET_NAME") }}'
AWS_S3_SIGNATURE_VERSION: 's3v4'
STORAGES_MODE: do
STORAGE_MAKE_FILES_PUBLIC: no
REDIS_URL: '{{ redis.REDIS_URL }}'
REMOTE_RAY_CLUSTER_ADDRESS_HEAD: 'back:6375'
DO_REGION: 'ams3'
RAY_BACKEND_LOG_LEVEL: 'warning'
RAY_ROTATION_MAX_BYTES: '10485760'
RAY_ROTATION_BACKUP_COUNT: '1'
ANTHROPIC_API_KEY: '{{ secret("ANTHROPIC_API_KEY") }}'
HUGGINGFACE_KEY: '{{ secret("HUGGINGFACE_KEY") }}'
MISTRAL_API_KEY: '{{ secret("MISTRAL_API_KEY") }}'
OPENAI_API_KEY: '{{ secret("OPENAI_API_KEY") }}'
TOGETHER_API_KEY: '{{ secret("TOGETHER_API_KEY") }}'
SENTRY_DSN: '{{ secret("SENTRY_DSN_BACK") }}'
- name: ray_worker
variables:
BACKEND_HOST: "{{ back.PRIVATE_URL }}"
BACKEND_TOKEN: '{{ secret("CHATFAQ_TOKEN") }}'
- name: ray_build
variables:
INSTALL_CHAT_RAG: 'true'
- name: widget
variables:
BASE_URL: "/demo"
NUXT_PUBLIC_BASE_URL: "/demo"
SENTRY_ENVIRONMENT: "{{ widget.component_key }}"
NUXT_PUBLIC_CHATFAQ_API: "{{ APP_URL }}"
NUXT_PUBLIC_CHATFAQ_WS: "wss://{{ APP_DOMAIN }}"
SENTRY_DSN: '{{ secret("SENTRY_DSN_WIDGET") }}'
- name: admin
variables:
SENTRY_ENVIRONMENT: "{{ admin.component_key }}"
NUXT_PROXY_OPTIONS_TARGET: "{{ back.PRIVATE_URL }}"
NUXT_API_URL: "{{ back.PRIVATE_URL }}"
NUXT_PUBLIC_CHATFAQ_WS: "wss://{{ APP_DOMAIN }}"
SENTRY_DSN: '{{ secret("SENTRY_DSN_ADMIN") }}'
- name: sdk
variables:
SENTRY_ENVIRONMENT: "{{ sdk.component_key }}"
CHATFAQ_BACKEND_WS: "wss://{{ APP_DOMAIN }}"
CHATFAQ_BACKEND_HTTP: "https://{{ APP_DOMAIN }}"
CHATFAQ_TOKEN: '{{ secret("CHATFAQ_TOKEN") }}'
SENTRY_DSN: '{{ secret("SENTRY_DSN_SDK") }}'
images:
- name: widget
build_context: widget
- name: admin
build_context: admin
- name: back
build_context: back
- name: sdk
build_context: sdk
services:
- name: admin
image: admin
envs: [ admin ]
port: 3000
instance_size: XXS
- name: widget
image: widget
envs: [ widget ]
port: 3000
instance_size: XXS
route_prefixes:
- "/demo"
- name: back
image: back
envs: [ django ]
port: 8000
internal_ports: [8265, 6375, 9090]
instance_size: M
route_prefixes:
- "/back"
workers:
- name: fsm_llm
image: sdk
envs: [ sdk ]
instance_size: XS
- name: ray
image:
host: docker.io
registry: chatfaq
repository: back-chatrag
tag: "production"
envs: [ django, ray_worker ]
instance_size: L
command: /.venv/bin/ray start --address=back:6375 --resources='{"tasks":100,"ai_components":100}' --block
jobs:
- name: migrate
when: PRE_DEPLOY
image: back
instance_size: XS
envs: [ django ]
command: modelw-docker run python manage.py migrate