Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
39 lines (38 loc) · 2.05 KB
/
Copy pathdocker-compose.yml
File metadata and controls
39 lines (38 loc) · 2.05 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
services:
forage:
build: .
image: fupzlito/forage:latest
container_name: forage
restart: always
ports:
- "3672:3672" # expose port 3672 (or use "127.0.0.1:3672:3672" for localhost-only)
environment:
- TZ=America/New_York
- FORAGE_AUTH_ENABLED=false # set to true to require Bearer API keys
- FORAGE_API_KEYS=your_api_key_here # comma-separated keys when auth is enabled
- FORAGE_REQUIRE_MAX_CHARS=false # require LLMs to budget token limits per URL
- FORAGE_SEARXNG_URL=http://searxng:8080 # SearXNG metasearch instance
- FORAGE_DEFAULT_ENGINES=google-cse,brave,bing,duckduckgo,startpage # default engines queried when search engine(s) omitted by LLMs
# - FORAGE_REDDIT_SESSION="your_session_cookie_here" # optional: logged-in reddit session (quote string to escape special characters)
# - FORAGE_REDDIT_TOKEN_V2="your_token_v2_cookie_here" # optional: reddit token_v2 cookie (quote string to escape special characters)
# - FORAGE_REDDIT_MIRROR=your-redlib-host # tier 2 redlib mirror (set to enable tier 2; all public mirrors are Anubis/Turnstile-blocked)
# - FORAGE_YOUTUBE_API_KEY="your_youtube_key_here" # enables youtube_search (YouTube Data API v3)
# volumes:
# # Uncomment if detailed config/prompt overrides are desired.
# # Stores config.yaml and prompts.yaml (auto-seeded on first run if directory is empty):
# # - ./config:/etc/forage
networks:
- searxng_default # talk to SearXNG by service name (searxng:8080)
healthcheck:
test: ["CMD", "curl", "-sf", "http://localhost:3672/health"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s
# SearXNG must run on this shared network so Forage can call it as searxng:8080.
# See docs/SEARXNG.md. If your SearXNG compose uses another project name,
# adjust the network name (and FORAGE_SEARXNG_URL) accordingly.
# Ensure the network exists before running: docker network create searxng_default
networks:
searxng_default:
external: true