version: '3.8' services: tor: image: dperson/torproxy:latest container_name: telebot-tor restart: unless-stopped ports: - "127.0.0.1:9050:9050" # SOCKS proxy port - "127.0.0.1:9051:9051" # Control port environment: - TORUSER=telebot - PASSWORD=Thefa1r1esd1d1t - TOR_NewCircuitPeriod=600 - TOR_MaxCircuitDirtiness=3600 - LOCATION=US volumes: - tor-data:/var/lib/tor networks: - telebot-network healthcheck: test: ["CMD", "curl", "--socks5", "localhost:9050", "https://check.torproject.org/api/ip"] interval: 60s timeout: 10s retries: 3 telebot: image: localhost:5000/telebot:latest container_name: telebot restart: unless-stopped depends_on: - tor environment: # Bot configuration - BotInfo__Name=LittleShop TeleBot - BotInfo__Description=Privacy-focused e-commerce Telegram bot - BotInfo__Version=1.0.0 # Telegram settings - Telegram__BotToken=8496279616:AAE7kV_riICbWxn6-MPFqcrWx7K8b4_NKq0 - Telegram__AdminChatId=123456789 - Telegram__UseWebhook=false # LittleShop API connection - LittleShop__ApiUrl=http://littleshop-admin:8080 - LittleShop__Username=admin - LittleShop__Password=admin - LittleShop__UseTor=false # Don't use Tor for local API # Privacy settings with Tor - Privacy__Mode=strict - Privacy__DataRetentionHours=24 - Privacy__SessionTimeoutMinutes=30 - Privacy__EnableAnalytics=false - Privacy__EphemeralByDefault=true - Privacy__EnableTor=true - Privacy__TorSocksPort=9050 - Privacy__TorControlPort=9051 - Privacy__OnionServiceDirectory=/var/lib/tor/telebot/ # Tor proxy settings for Telegram - HTTPS_PROXY=socks5h://tor:9050 - HTTP_PROXY=socks5h://tor:9050 - ALL_PROXY=socks5h://tor:9050 # Database - Database__ConnectionString=Filename=/app/data/telebot.db;Password=Thefa1r1esd1d1t; - Database__EncryptionKey=ff34ur340uifoisdjf03uur283hr238n9978sdfgb82rn8dh # Features - Features__EnableQRCodes=true - Features__EnablePGPEncryption=true - Features__EnableDisappearingMessages=true - Features__EnableOrderMixing=true - Features__MixingDelayMinSeconds=60 - Features__MixingDelayMaxSeconds=300 # Redis (optional, using local instead) - Redis__Enabled=false # Logging - Logging__LogLevel__Default=Information - Logging__PrivacyMode=true # Kestrel endpoints - Kestrel__Endpoints__Http__Url=http://+:5010 # Cryptocurrencies - Cryptocurrencies__0=BTC - Cryptocurrencies__1=XMR - Cryptocurrencies__2=ETH - Cryptocurrencies__3=LTC volumes: - /opt/telebot/data:/app/data - /opt/telebot/logs:/app/logs - /opt/telebot/image_cache:/app/image_cache - tor-data:/var/lib/tor networks: - telebot-network - littleshop-network # Connect to LittleShop network healthcheck: test: ["CMD", "pgrep", "-f", "dotnet.*TeleBot"] interval: 30s timeout: 10s retries: 3 start_period: 60s logging: driver: "json-file" options: max-size: "10m" max-file: "3" volumes: tor-data: driver: local networks: telebot-network: driver: bridge littleshop-network: external: true