littleshop/TeleBot/portainer-template.json
SilverLabs DevTeam 73e8773ea3 Configure BTCPay with external nodes via Tor
- 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.
2025-09-19 12:14:39 +01:00

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"
}
]
}
]
}