Add production deployment infrastructure
- Created comprehensive deployment package with production builds - Added deployment scripts for Linux and Docker environments - Generated Dockerfiles for containerized deployment - Included nginx reverse proxy configuration - Added systemd service definitions for native Linux deployment - Created docker-compose.production.yml for orchestration - Comprehensive deployment documentation in README.md - Both LittleShop and TeleBot production builds included - Ready for deployment to Hostinger VPS server 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
BIN
Deploy/TeleBot/BouncyCastle.Cryptography.dll
Normal file
BIN
Deploy/TeleBot/BouncyCastle.Cryptography.dll
Normal file
Binary file not shown.
31
Deploy/TeleBot/Dockerfile
Normal file
31
Deploy/TeleBot/Dockerfile
Normal file
@@ -0,0 +1,31 @@
|
||||
# TeleBot Production Dockerfile
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
|
||||
WORKDIR /app
|
||||
EXPOSE 5010
|
||||
|
||||
# Create non-root user
|
||||
RUN addgroup --system --gid 1001 telebot \
|
||||
&& adduser --system --uid 1001 --ingroup telebot telebot
|
||||
|
||||
# Create necessary directories
|
||||
RUN mkdir -p /app/logs \
|
||||
&& chown -R telebot:telebot /app
|
||||
|
||||
# Copy published application
|
||||
COPY . .
|
||||
|
||||
# Set ownership
|
||||
RUN chown -R telebot:telebot /app
|
||||
|
||||
# Switch to non-root user
|
||||
USER telebot
|
||||
|
||||
# Health check
|
||||
HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \
|
||||
CMD curl -f http://localhost:5010/health || exit 1
|
||||
|
||||
# Set environment variables
|
||||
ENV ASPNETCORE_ENVIRONMENT=Production
|
||||
ENV ASPNETCORE_URLS=http://+:5010
|
||||
|
||||
ENTRYPOINT ["./TeleBot"]
|
||||
BIN
Deploy/TeleBot/FluentValidation.dll
Normal file
BIN
Deploy/TeleBot/FluentValidation.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Hangfire.AspNetCore.dll
Normal file
BIN
Deploy/TeleBot/Hangfire.AspNetCore.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Hangfire.Core.dll
Normal file
BIN
Deploy/TeleBot/Hangfire.Core.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Hangfire.LiteDB.dll
Normal file
BIN
Deploy/TeleBot/Hangfire.LiteDB.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Hangfire.NetCore.dll
Normal file
BIN
Deploy/TeleBot/Hangfire.NetCore.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Hangfire.SqlServer.dll
Normal file
BIN
Deploy/TeleBot/Hangfire.SqlServer.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Humanizer.dll
Normal file
BIN
Deploy/TeleBot/Humanizer.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/LiteDB.dll
Normal file
BIN
Deploy/TeleBot/LiteDB.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/LittleShop.Client.dll
Normal file
BIN
Deploy/TeleBot/LittleShop.Client.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/LittleShop.Client.pdb
Normal file
BIN
Deploy/TeleBot/LittleShop.Client.pdb
Normal file
Binary file not shown.
Binary file not shown.
BIN
Deploy/TeleBot/Microsoft.IdentityModel.Abstractions.dll
Normal file
BIN
Deploy/TeleBot/Microsoft.IdentityModel.Abstractions.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Microsoft.IdentityModel.JsonWebTokens.dll
Normal file
BIN
Deploy/TeleBot/Microsoft.IdentityModel.JsonWebTokens.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Microsoft.IdentityModel.Logging.dll
Normal file
BIN
Deploy/TeleBot/Microsoft.IdentityModel.Logging.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Microsoft.IdentityModel.Tokens.dll
Normal file
BIN
Deploy/TeleBot/Microsoft.IdentityModel.Tokens.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Newtonsoft.Json.dll
Normal file
BIN
Deploy/TeleBot/Newtonsoft.Json.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/PgpCore.dll
Normal file
BIN
Deploy/TeleBot/PgpCore.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Pipelines.Sockets.Unofficial.dll
Normal file
BIN
Deploy/TeleBot/Pipelines.Sockets.Unofficial.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Polly.Extensions.Http.dll
Normal file
BIN
Deploy/TeleBot/Polly.Extensions.Http.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Polly.dll
Normal file
BIN
Deploy/TeleBot/Polly.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/QRCoder.dll
Normal file
BIN
Deploy/TeleBot/QRCoder.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Serilog.Extensions.Logging.dll
Normal file
BIN
Deploy/TeleBot/Serilog.Extensions.Logging.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Serilog.Sinks.Console.dll
Normal file
BIN
Deploy/TeleBot/Serilog.Sinks.Console.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Serilog.Sinks.File.dll
Normal file
BIN
Deploy/TeleBot/Serilog.Sinks.File.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Serilog.dll
Normal file
BIN
Deploy/TeleBot/Serilog.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/SixLabors.ImageSharp.dll
Normal file
BIN
Deploy/TeleBot/SixLabors.ImageSharp.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/StackExchange.Redis.dll
Normal file
BIN
Deploy/TeleBot/StackExchange.Redis.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/System.IdentityModel.Tokens.Jwt.dll
Normal file
BIN
Deploy/TeleBot/System.IdentityModel.Tokens.Jwt.dll
Normal file
Binary file not shown.
1078
Deploy/TeleBot/TeleBot.deps.json
Normal file
1078
Deploy/TeleBot/TeleBot.deps.json
Normal file
File diff suppressed because it is too large
Load Diff
BIN
Deploy/TeleBot/TeleBot.dll
Normal file
BIN
Deploy/TeleBot/TeleBot.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/TeleBot.exe
Normal file
BIN
Deploy/TeleBot/TeleBot.exe
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/TeleBot.pdb
Normal file
BIN
Deploy/TeleBot/TeleBot.pdb
Normal file
Binary file not shown.
19
Deploy/TeleBot/TeleBot.runtimeconfig.json
Normal file
19
Deploy/TeleBot/TeleBot.runtimeconfig.json
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"runtimeOptions": {
|
||||
"tfm": "net9.0",
|
||||
"frameworks": [
|
||||
{
|
||||
"name": "Microsoft.NETCore.App",
|
||||
"version": "9.0.0"
|
||||
},
|
||||
{
|
||||
"name": "Microsoft.AspNetCore.App",
|
||||
"version": "9.0.0"
|
||||
}
|
||||
],
|
||||
"configProperties": {
|
||||
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false,
|
||||
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
Deploy/TeleBot/Telegram.Bot.Extensions.Polling.dll
Normal file
BIN
Deploy/TeleBot/Telegram.Bot.Extensions.Polling.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/Telegram.Bot.dll
Normal file
BIN
Deploy/TeleBot/Telegram.Bot.dll
Normal file
Binary file not shown.
84
Deploy/TeleBot/appsettings.json
Normal file
84
Deploy/TeleBot/appsettings.json
Normal file
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"BotInfo": {
|
||||
"Name": "LittleShop TeleBot",
|
||||
"Description": "Privacy-focused e-commerce Telegram bot",
|
||||
"Version": "1.0.0"
|
||||
},
|
||||
"BotManager": {
|
||||
"ApiKey": "",
|
||||
"Comment": "This will be populated after first registration with admin panel"
|
||||
},
|
||||
"Telegram": {
|
||||
"BotToken": "8496279616:AAE7kV_riICbWxn6-MPFqcrWx7K8b4_NKq0",
|
||||
"AdminChatId": "123456789",
|
||||
"WebhookUrl": "",
|
||||
"UseWebhook": false,
|
||||
"Comment": "Bot token will be fetched from admin panel API if BotManager:ApiKey is set"
|
||||
},
|
||||
"Webhook": {
|
||||
"Secret": "",
|
||||
"Comment": "Optional secret key for webhook authentication"
|
||||
},
|
||||
"LittleShop": {
|
||||
"ApiUrl": "http://localhost:8080",
|
||||
"OnionUrl": "",
|
||||
"Username": "admin",
|
||||
"Password": "admin",
|
||||
"UseTor": false
|
||||
},
|
||||
"Privacy": {
|
||||
"Mode": "strict",
|
||||
"DataRetentionHours": 24,
|
||||
"SessionTimeoutMinutes": 30,
|
||||
"EnableAnalytics": false,
|
||||
"RequirePGPForShipping": false,
|
||||
"EphemeralByDefault": true,
|
||||
"EnableTor": false,
|
||||
"TorSocksPort": 9050,
|
||||
"TorControlPort": 9051,
|
||||
"OnionServiceDirectory": "/var/lib/tor/telebot/"
|
||||
},
|
||||
"Redis": {
|
||||
"ConnectionString": "localhost:6379",
|
||||
"InstanceName": "TeleBot",
|
||||
"Enabled": false
|
||||
},
|
||||
"Database": {
|
||||
"ConnectionString": "Filename=telebot.db;Password=;",
|
||||
"EncryptionKey": "CHANGE_THIS_KEY_IN_PRODUCTION"
|
||||
},
|
||||
"Features": {
|
||||
"EnableVoiceSearch": false,
|
||||
"EnableQRCodes": true,
|
||||
"EnablePGPEncryption": true,
|
||||
"EnableDisappearingMessages": true,
|
||||
"EnableOrderMixing": true,
|
||||
"MixingDelayMinSeconds": 60,
|
||||
"MixingDelayMaxSeconds": 300
|
||||
},
|
||||
"Logging": {
|
||||
"LogLevel": {
|
||||
"Default": "Information",
|
||||
"Microsoft": "Warning",
|
||||
"System": "Warning"
|
||||
},
|
||||
"PrivacyMode": true
|
||||
},
|
||||
"Hangfire": {
|
||||
"Enabled": false,
|
||||
"DatabasePath": "hangfire.db"
|
||||
},
|
||||
"Cryptocurrencies": [
|
||||
"BTC",
|
||||
"XMR",
|
||||
"LTC",
|
||||
"DASH"
|
||||
],
|
||||
"Kestrel": {
|
||||
"Endpoints": {
|
||||
"Http": {
|
||||
"Url": "http://localhost:5010"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
Deploy/TeleBot/ca/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/ca/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/de/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/de/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/es/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/es/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/fa/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/fa/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/fr/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/fr/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/nb/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/nb/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/nl/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/nl/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/pt-BR/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/pt-BR/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/pt-PT/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/pt-PT/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/pt/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/pt/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/sv/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/sv/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/tr-TR/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/tr-TR/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/zh-TW/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/zh-TW/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
BIN
Deploy/TeleBot/zh/Hangfire.Core.resources.dll
Normal file
BIN
Deploy/TeleBot/zh/Hangfire.Core.resources.dll
Normal file
Binary file not shown.
Reference in New Issue
Block a user