Compare commits
2 Commits
155e4d3b7b
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
| 77ae161b1a | |||
| 35a977536b |
@@ -15,8 +15,8 @@ RUN npm ci && npm cache clean --force
|
||||
COPY src/ ./src/
|
||||
COPY .env.example ./
|
||||
|
||||
# Build the application
|
||||
RUN npm run build
|
||||
# Build the application (using Linux-compatible build command)
|
||||
RUN npm run build:linux
|
||||
|
||||
# Production stage
|
||||
FROM node:18-alpine AS production
|
||||
|
||||
@@ -27,6 +27,14 @@ if [ ! -f .env ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Проверяем и исправляем проблему с командой сборки в Dockerfile
|
||||
echo "🔧 Проверка конфигурации Dockerfile..."
|
||||
if grep -q "RUN npm run build" Dockerfile; then
|
||||
echo "⚠️ Исправление команды сборки в Dockerfile для совместимости с Linux..."
|
||||
sed -i 's/RUN npm run build/RUN npm run build:linux/g' Dockerfile
|
||||
echo "✅ Dockerfile обновлен"
|
||||
fi
|
||||
|
||||
# Запускаем Docker Compose
|
||||
echo "🐳 Сборка и запуск контейнеров Docker..."
|
||||
docker-compose down
|
||||
|
||||
45
docker-compose.temp.yml
Normal file
45
docker-compose.temp.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
[36mВведите параметры подключения к внешней базе данных:[0m
|
||||
Хост (например, localhost): Порт (например, 5432): Имя базы данных: Имя пользователя: Пароль: [33mМодифицируем docker-compose.yml для работы с внешней базой данных...[0m
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 䠩<><E4A0A9><EFBFBD>: 0.
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
bot:
|
||||
build: .
|
||||
container_name: telegram-tinder-bot
|
||||
restart: unless-stopped
|
||||
env_file: .env
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
- DB_HOST=
|
||||
- DB_PORT=
|
||||
- DB_NAME=
|
||||
- DB_USERNAME=
|
||||
- DB_PASSWORD=
|
||||
volumes:
|
||||
- ./uploads:/app/uploads
|
||||
- ./logs:/app/logs
|
||||
networks:
|
||||
- bot-network
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/health"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
adminer:
|
||||
image: adminer:latest
|
||||
container_name: adminer-tinder
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8080:8080"
|
||||
networks:
|
||||
- bot-network
|
||||
|
||||
volumes:
|
||||
postgres_data:
|
||||
|
||||
networks:
|
||||
bot-network:
|
||||
driver: bridge
|
||||
@@ -3,6 +3,24 @@
|
||||
|
||||
echo "🚀 Starting Telegram Tinder Bot..."
|
||||
|
||||
# Check for locales directory
|
||||
if [ ! -d "dist/locales" ]; then
|
||||
echo "⚠️ Locales directory not found in dist/locales"
|
||||
echo "🔍 Checking source directory structure..."
|
||||
ls -la dist/ || echo "Error listing dist directory"
|
||||
|
||||
# If src/locales exists, copy it to dist/locales
|
||||
if [ -d "src/locales" ]; then
|
||||
echo "📂 Found src/locales directory. Copying to dist/locales..."
|
||||
mkdir -p dist/locales
|
||||
cp -R src/locales/* dist/locales/
|
||||
echo "✅ Locales copied successfully"
|
||||
else
|
||||
echo "❌ src/locales directory not found either. Creating empty locales directory..."
|
||||
mkdir -p dist/locales
|
||||
fi
|
||||
fi
|
||||
|
||||
# Wait for database to be ready
|
||||
echo "⏳ Waiting for database to be ready..."
|
||||
sleep 5
|
||||
|
||||
@@ -3,13 +3,15 @@
|
||||
|
||||
const { Pool } = require('pg');
|
||||
|
||||
// Настройки подключения к базе данных - используем те же настройки, что и раньше
|
||||
// Настройки подключения к базе данных из переменных окружения
|
||||
require('dotenv').config();
|
||||
|
||||
const pool = new Pool({
|
||||
host: '192.168.0.102',
|
||||
port: 5432,
|
||||
database: 'telegram_tinder_bot',
|
||||
user: 'trevor',
|
||||
password: 'Cl0ud_1985!'
|
||||
host: process.env.DB_HOST || 'localhost',
|
||||
port: process.env.DB_PORT || 5432,
|
||||
database: process.env.DB_NAME || 'telegram_tinder_bot',
|
||||
user: process.env.DB_USERNAME || 'postgres',
|
||||
password: process.env.DB_PASSWORD || ''
|
||||
});
|
||||
|
||||
async function addPremiumColumns() {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// add-premium-columns.ts
|
||||
// Скрипт для добавления колонок premium и premium_expires_at в таблицу users
|
||||
|
||||
import { query } from '../src/database/connection';
|
||||
import { query } from '../database/connection';
|
||||
|
||||
async function addPremiumColumns() {
|
||||
try {
|
||||
|
||||
8
start.sh
8
start.sh
@@ -32,6 +32,14 @@ if [ ! -f .env ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
# Проверяем и исправляем проблему с командой сборки в Dockerfile
|
||||
echo -e "${YELLOW}Проверка конфигурации Dockerfile...${NC}"
|
||||
if grep -q "RUN npm run build" Dockerfile && ! grep -q "RUN npm run build:linux" Dockerfile; then
|
||||
echo -e "${YELLOW}⚠️ Исправление команды сборки в Dockerfile для совместимости с Linux...${NC}"
|
||||
sed -i "s/RUN npm run build/RUN npm run build:linux/g" Dockerfile
|
||||
echo -e "${GREEN}✅ Dockerfile обновлен для использования команды сборки совместимой с Linux${NC}"
|
||||
fi
|
||||
|
||||
# Спрашиваем про запуск базы данных
|
||||
read -p "Запустить базу данных PostgreSQL в контейнере? (y/n): " use_container_db
|
||||
|
||||
|
||||
Reference in New Issue
Block a user