[READ ONLY MIRROR] Spark Social AppView Server
github.com/sprksocial/server
atproto
deno
hono
lexicon
1services:
2 db:
3 image: mongo:8
4 environment:
5 MONGO_INITDB_ROOT_USERNAME: mongo
6 MONGO_INITDB_ROOT_PASSWORD: mongo
7 MONGO_INITDB_DATABASE: dev
8 ports:
9 - "27017:27017"
10 volumes:
11 - ./devdb:/data/db
12 healthcheck:
13 test: ["CMD", "mongosh", "--eval", '''db.adminCommand("ping")''']
14 interval: 10s
15 timeout: 5s
16 retries: 3
17 restart: unless-stopped
18
19 app:
20 build:
21 context: .
22 dockerfile: Dockerfile
23 command: ["deno", "run", "-A", "--watch", "main.ts"]
24 environment:
25 NODE_ENV: development
26 HOST: 0.0.0.0
27 SPRK_PORT: 3000
28 SPRK_DB_URI: mongodb://mongo:mongo@db:27017
29 SPRK_DB_NAME: dev
30 SPRK_ADMIN_PASSWORDS: "12345"
31 env_file:
32 - .env
33 ports:
34 - "4000:3000"
35 depends_on:
36 db:
37 condition: service_healthy
38 develop:
39 watch:
40 - path: ./api
41 action: sync
42 target: /app/api
43 - path: ./lexicons
44 action: rebuild
45 - path: ./services
46 action: sync
47 target: /app/services
48 - path: ./utils
49 action: sync
50 target: /app/utils
51 - path: ./data-plane
52 action: sync
53 target: /app/data-plane
54 - path: ./main.ts
55 action: sync
56 target: /app/main.ts
57 - path: ./views
58 action: sync
59 target: /app/views
60 - path: ./data-plane
61 action: sync
62 target: /app/data-plane
63 - path: ./hydration
64 action: sync
65 target: /app/hydration
66 restart: unless-stopped
67
68 ingester:
69 build:
70 context: .
71 dockerfile: Dockerfile
72 command: ["deno", "run", "-A", "--watch", "ingest.ts"]
73 environment:
74 NODE_ENV: development
75 HOST: 0.0.0.0
76 SPRK_DB_URI: mongodb://mongo:mongo@db:27017
77 SPRK_DB_NAME: dev
78 ADMIN_PASSWORD: "12345"
79 env_file:
80 - .env
81 depends_on:
82 db:
83 condition: service_healthy
84 develop:
85 watch:
86 - path: ./api
87 action: sync
88 target: /app/api
89 - path: ./lexicons
90 action: rebuild
91 - path: ./services
92 action: sync
93 target: /app/services
94 - path: ./utils
95 action: sync
96 target: /app/utils
97 - path: ./data-plane
98 action: sync
99 target: /app/data-plane
100 - path: ./main.ts
101 action: sync
102 target: /app/main.ts
103 - path: ./views
104 action: sync
105 target: /app/views
106 - path: ./data-plane
107 action: sync
108 target: /app/data-plane
109 - path: ./hydration
110 action: sync
111 target: /app/hydration
112 restart: unless-stopped