A discord bot for teal.fm
discord
tealfm
music
1name: "Disco Stu Compose - Prod"
2services:
3 web:
4 container_name: web
5 restart: always
6 build:
7 context: .
8 dockerfile: atcr.io/besaid.zone/discostuweb:1.0
9 target: web
10 ports:
11 - 8002:8002
12 depends_on:
13 db:
14 condition: service_healthy
15 bot:
16 condition: service_started
17
18 environment:
19 PUBLIC_URL: "${PUBLIC_URL:?PUBLIC_URL is required}"
20 PRIVATE_KEYS: "${PRIVATE_KEYS:?PRIVATE_KEYS is required}"
21 COOKIE_SECRET: "${COOKIE_SECRET:?COOKIE_SECRET is required}"
22 healthcheck:
23 test: ["CMD", "wget", "-q", "--spider", "http://localhost:8002/health"]
24 interval: 30s
25 timeout: 10s
26 retries: 3
27 start_period: 10s
28
29 tapper:
30 container_name: tapper
31 build:
32 context: .
33 dockerfile: atcr.io/besaid.zone/discostutapper:1.0
34 target: tapper
35
36 depends_on:
37 db:
38 condition: service_healthy
39
40 environment:
41 NODE_ENV: production
42 TAP_ADMIN_PASSWORD: "${TAP_ADMIN_PASSWORD:?TAP_ADMIN_PASSWORD is required}"
43 bot:
44 container_name: bot
45 restart: always
46 build:
47 context: .
48 dockerfile: atcr.io/besaid.zone/discostubot:1.0
49 target: bot
50
51 depends_on:
52 db:
53 condition: service_healthy
54
55 environment:
56 NODE_ENV: production
57 DISCORD_BOT_TOKEN: "${DISCORD_BOT_TOKEN:?DISCORD_BOT_TOKEN is required}"
58 DISCORD_APPLICATION_ID: "${DISCORD_APPLICATION_ID:?DISCORD_APPLICATION_ID is required}"
59 DISCORD_GUILD_ID: "${DISCORD_GUILD_ID:?DISCORD_GUILD_ID is required}"
60 db:
61 image: postgres:18.1
62 healthcheck:
63 test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
64 interval: 10s
65 retries: 5
66 start_period: 30s
67 timeout: 10s
68 restart: always
69 environment:
70 POSTGRES_USER: "${POSTGRES_USER:?POSTGRES_USER is required}"
71 POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}"
72 POSTGRES_DB: "${POSTGRES_DB:?POSTGRES_DB is required}"
73 ports:
74 - 5432:5432
75
76 volumes:
77 - "postgres-data:/var/lib/postgresql/data"
78
79volumes:
80 postgres-data: