- Set up Tor container for SOCKS proxy (port 9050) - Configured Monero wallet with remote onion node - Bitcoin node continues syncing in background (60% complete) - Created documentation for wallet configuration steps - All external connections routed through Tor for privacy BTCPay requires manual wallet configuration through web interface: - Bitcoin: Need to add xpub/zpub for watch-only wallet - Monero: Need to add address and view key System ready for payment acceptance once wallets configured.
295 lines
8.4 KiB
JSON
295 lines
8.4 KiB
JSON
{
|
|
"version": "2",
|
|
"templates": [
|
|
{
|
|
"type": 1,
|
|
"title": "LittleShop TeleBot",
|
|
"name": "littleshop-telebot",
|
|
"description": "Deploy a Telegram bot for LittleShop e-commerce platform",
|
|
"note": "Requires a Telegram bot token from @BotFather and API key from LittleShop admin panel",
|
|
"categories": ["bots", "ecommerce", "telegram"],
|
|
"platform": "linux",
|
|
"logo": "https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/telegram.png",
|
|
"image": "littleshop/telebot:latest",
|
|
"restart_policy": "unless-stopped",
|
|
"network_mode": "bridge",
|
|
"hostname": "",
|
|
"privileged": false,
|
|
"interactive": false,
|
|
"env": [
|
|
{
|
|
"name": "DOTNET_ENVIRONMENT",
|
|
"label": "Environment",
|
|
"default": "Production",
|
|
"preset": true
|
|
},
|
|
{
|
|
"name": "TZ",
|
|
"label": "Timezone",
|
|
"default": "UTC",
|
|
"description": "Container timezone (e.g., Europe/London, America/New_York)"
|
|
},
|
|
{
|
|
"name": "Telegram__BotToken",
|
|
"label": "Telegram Bot Token",
|
|
"description": "Token from @BotFather (required)"
|
|
},
|
|
{
|
|
"name": "Telegram__AdminChatId",
|
|
"label": "Admin Chat ID",
|
|
"description": "Telegram chat ID for admin notifications (optional)"
|
|
},
|
|
{
|
|
"name": "LittleShop__ApiUrl",
|
|
"label": "LittleShop API URL",
|
|
"default": "http://host.docker.internal:8080",
|
|
"description": "URL to LittleShop API (e.g., https://api.shop.com)"
|
|
},
|
|
{
|
|
"name": "LittleShop__Username",
|
|
"label": "API Username",
|
|
"default": "admin",
|
|
"description": "LittleShop API username"
|
|
},
|
|
{
|
|
"name": "LittleShop__Password",
|
|
"label": "API Password",
|
|
"default": "admin",
|
|
"description": "LittleShop API password"
|
|
},
|
|
{
|
|
"name": "BotManager__ApiKey",
|
|
"label": "Bot API Key",
|
|
"description": "API key from LittleShop admin panel (optional)"
|
|
},
|
|
{
|
|
"name": "Database__EncryptionKey",
|
|
"label": "Database Encryption Key",
|
|
"description": "32-character key for database encryption (auto-generated if not provided)"
|
|
},
|
|
{
|
|
"name": "Privacy__Mode",
|
|
"label": "Privacy Mode",
|
|
"default": "strict",
|
|
"select": [
|
|
{
|
|
"text": "Strict (Maximum Privacy)",
|
|
"value": "strict"
|
|
},
|
|
{
|
|
"text": "Moderate (Balanced)",
|
|
"value": "moderate"
|
|
},
|
|
{
|
|
"text": "Relaxed (More Features)",
|
|
"value": "relaxed"
|
|
}
|
|
],
|
|
"description": "Privacy level for user data handling"
|
|
},
|
|
{
|
|
"name": "Privacy__DataRetentionHours",
|
|
"label": "Data Retention Hours",
|
|
"default": "24",
|
|
"description": "Hours to retain user data (1-168)"
|
|
},
|
|
{
|
|
"name": "Privacy__SessionTimeoutMinutes",
|
|
"label": "Session Timeout Minutes",
|
|
"default": "30",
|
|
"description": "Minutes before session expires (5-1440)"
|
|
},
|
|
{
|
|
"name": "Privacy__EphemeralByDefault",
|
|
"label": "Ephemeral Messages",
|
|
"default": "true",
|
|
"select": [
|
|
{
|
|
"text": "Enabled",
|
|
"value": "true"
|
|
},
|
|
{
|
|
"text": "Disabled",
|
|
"value": "false"
|
|
}
|
|
],
|
|
"description": "Enable ephemeral messages by default"
|
|
},
|
|
{
|
|
"name": "Features__EnableQRCodes",
|
|
"label": "Enable QR Codes",
|
|
"default": "true",
|
|
"select": [
|
|
{
|
|
"text": "Enabled",
|
|
"value": "true"
|
|
},
|
|
{
|
|
"text": "Disabled",
|
|
"value": "false"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Features__EnablePGPEncryption",
|
|
"label": "Enable PGP Encryption",
|
|
"default": "true",
|
|
"select": [
|
|
{
|
|
"text": "Enabled",
|
|
"value": "true"
|
|
},
|
|
{
|
|
"text": "Disabled",
|
|
"value": "false"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "Features__EnableDisappearingMessages",
|
|
"label": "Enable Disappearing Messages",
|
|
"default": "true",
|
|
"select": [
|
|
{
|
|
"text": "Enabled",
|
|
"value": "true"
|
|
},
|
|
{
|
|
"text": "Disabled",
|
|
"value": "false"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"volumes": [
|
|
{
|
|
"container": "/app/data",
|
|
"bind": "!telebot-data"
|
|
},
|
|
{
|
|
"container": "/app/logs",
|
|
"bind": "!telebot-logs"
|
|
}
|
|
],
|
|
"labels": [
|
|
{
|
|
"name": "traefik.enable",
|
|
"value": "false"
|
|
},
|
|
{
|
|
"name": "com.littleshop.bot",
|
|
"value": "true"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": 3,
|
|
"title": "LittleShop Multi-Bot Stack",
|
|
"name": "littleshop-multibot",
|
|
"description": "Deploy multiple LittleShop TeleBots (Support, Sales, VIP)",
|
|
"note": "Requires multiple bot tokens and configuration. Edit the stack after creation to add environment variables.",
|
|
"categories": ["bots", "ecommerce", "telegram"],
|
|
"platform": "linux",
|
|
"logo": "https://raw.githubusercontent.com/walkxcode/dashboard-icons/main/png/telegram.png",
|
|
"repository": {
|
|
"url": "https://github.com/yourusername/littleshop",
|
|
"stackfile": "TeleBot/docker-compose.multi.yml"
|
|
},
|
|
"env": [
|
|
{
|
|
"name": "LITTLESHOP_API_URL",
|
|
"label": "LittleShop API URL",
|
|
"default": "http://host.docker.internal:8080",
|
|
"description": "Shared API URL for all bots"
|
|
},
|
|
{
|
|
"name": "LITTLESHOP_USERNAME",
|
|
"label": "API Username",
|
|
"default": "admin"
|
|
},
|
|
{
|
|
"name": "LITTLESHOP_PASSWORD",
|
|
"label": "API Password",
|
|
"default": "admin"
|
|
},
|
|
{
|
|
"name": "SUPPORT_BOT_TOKEN",
|
|
"label": "Support Bot Token",
|
|
"description": "Token for customer support bot"
|
|
},
|
|
{
|
|
"name": "SUPPORT_BOT_API_KEY",
|
|
"label": "Support Bot API Key",
|
|
"description": "API key for support bot"
|
|
},
|
|
{
|
|
"name": "SUPPORT_ADMIN_CHAT_ID",
|
|
"label": "Support Admin Chat ID"
|
|
},
|
|
{
|
|
"name": "SUPPORT_DB_ENCRYPTION_KEY",
|
|
"label": "Support DB Encryption Key",
|
|
"description": "32-char key for support bot database"
|
|
},
|
|
{
|
|
"name": "SALES_BOT_TOKEN",
|
|
"label": "Sales Bot Token",
|
|
"description": "Token for sales/marketing bot"
|
|
},
|
|
{
|
|
"name": "SALES_BOT_API_KEY",
|
|
"label": "Sales Bot API Key",
|
|
"description": "API key for sales bot"
|
|
},
|
|
{
|
|
"name": "SALES_ADMIN_CHAT_ID",
|
|
"label": "Sales Admin Chat ID"
|
|
},
|
|
{
|
|
"name": "SALES_DB_ENCRYPTION_KEY",
|
|
"label": "Sales DB Encryption Key",
|
|
"description": "32-char key for sales bot database"
|
|
},
|
|
{
|
|
"name": "VIP_BOT_TOKEN",
|
|
"label": "VIP Bot Token",
|
|
"description": "Token for VIP customer bot"
|
|
},
|
|
{
|
|
"name": "VIP_BOT_API_KEY",
|
|
"label": "VIP Bot API Key",
|
|
"description": "API key for VIP bot"
|
|
},
|
|
{
|
|
"name": "VIP_ADMIN_CHAT_ID",
|
|
"label": "VIP Admin Chat ID"
|
|
},
|
|
{
|
|
"name": "VIP_DB_ENCRYPTION_KEY",
|
|
"label": "VIP DB Encryption Key",
|
|
"description": "32-char key for VIP bot database"
|
|
},
|
|
{
|
|
"name": "VIP_ENABLE_TOR",
|
|
"label": "Enable Tor for VIP Bot",
|
|
"default": "false",
|
|
"select": [
|
|
{
|
|
"text": "Enabled",
|
|
"value": "true"
|
|
},
|
|
{
|
|
"text": "Disabled",
|
|
"value": "false"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "REDIS_PASSWORD",
|
|
"label": "Redis Password",
|
|
"description": "Password for shared Redis cache"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
} |