-
Notifications
You must be signed in to change notification settings - Fork 85
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
60 lines (59 loc) · 1.98 KB
/
Copy pathdocker-compose.yml
File metadata and controls
60 lines (59 loc) · 1.98 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
# ============================================================
# thefeed-server — Docker Compose
# ============================================================
#
# Quick start (public channels, no Telegram login):
# 1. cp .env.example .env (edit with your domain & key)
# 2. mkdir -p data && cp configs/channels.txt data/
# 3. docker compose up -d
# 4. Set up iptables to redirect external port 53 to 5300:
# sudo iptables -t nat -I PREROUTING -i eth0 -p udp --dport 53 -j REDIRECT --to-ports 5300
# sudo iptables -I INPUT -p udp --dport 5300 -j ACCEPT
# (replace eth0 with your network interface — check with: ip a)
#
# With Telegram (one-time login first):
# 1. cp .env.example .env (uncomment Telegram vars)
# 2. docker compose run -it --rm server \
# --login-only --data-dir /data \
# --domain ${THEFEED_DOMAIN} --key ${THEFEED_KEY} \
# --api-id ${TELEGRAM_API_ID} --api-hash ${TELEGRAM_API_HASH} \
# --phone ${TELEGRAM_PHONE}
# 3. Remove --no-telegram from the command below
# 4. docker compose up -d
#
# Logs: docker compose logs -f
# Stop: docker compose down
# ============================================================
services:
server:
build:
context: .
args:
VERSION: ${VERSION:-docker}
COMMIT: ${COMMIT:-unknown}
DATE: ${DATE:-unknown}
container_name: thefeed-server
restart: unless-stopped
ports:
- "5300:5300/udp"
volumes:
- ./data:/data
env_file:
- .env
command: >-
--data-dir /data
--listen :5300
--domain ${THEFEED_DOMAIN}
--key ${THEFEED_KEY}
--no-telegram
# To enable Telegram mode:
# 1. Run login-only first (see instructions above)
# 2. Replace the command above with:
# command: >-
# --data-dir /data
# --listen :5300
# --domain ${THEFEED_DOMAIN}
# --key ${THEFEED_KEY}
# --api-id ${TELEGRAM_API_ID}
# --api-hash ${TELEGRAM_API_HASH}
# --phone ${TELEGRAM_PHONE}