Files
bot-telegram/DOCKER_COMMANDS.md
2025-09-14 22:09:39 +05:00

3.5 KiB
Raw Blame History

Docker команды для управления Telegram Bot API

Основные команды

Запуск и остановка

# Запуск всех сервисов
docker-compose up -d

# Запуск с пересборкой
docker-compose up --build -d

# Запуск с админкой
docker-compose --profile admin up -d

# Остановка
docker-compose down

# Остановка с удалением данных
docker-compose down -v

Логи и мониторинг

# Просмотр логов всех сервисов
docker-compose logs

# Логи конкретного сервиса
docker-compose logs -f app
docker-compose logs -f postgres

# Статус сервисов
docker-compose ps

Управление сервисами

# Перезапуск сервиса
docker-compose restart app

# Остановка конкретного сервиса
docker-compose stop app

# Масштабирование (если нужно)
docker-compose up --scale app=2 -d

Работа с контейнерами

# Выполнение команд в контейнере приложения
docker-compose exec app bash
docker-compose exec app python -c "from database.database import test_db_connection; print(test_db_connection())"

# Подключение к PostgreSQL
docker-compose exec postgres psql -U postgres -d telegram_bot

# Просмотр таблиц
docker-compose exec postgres psql -U postgres -d telegram_bot -c "\dt"

Отладка и разработка

# Запуск в режиме разработки (с volume для кода)
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d

# Просмотр переменных окружения в контейнере
docker-compose exec app env

# Проверка сетевого подключения
docker-compose exec app ping postgres

Очистка и обслуживание

# Удаление неиспользуемых образов
docker image prune

# Удаление всех остановленных контейнеров
docker container prune

# Полная очистка Docker системы
docker system prune -a

# Просмотр использования места
docker system df

Готовые скрипты

Скрипт для быстрого запуска (start.sh)

#!/bin/bash
echo "Запуск Telegram Bot API..."
docker-compose up --build -d
echo "API доступно по адресу: http://localhost:8000"
echo "Документация: http://localhost:8000/docs"

Скрипт для остановки (stop.sh)

#!/bin/bash
echo "Остановка Telegram Bot API..."
docker-compose down
echo "Сервисы остановлены"

Скрипт для полного сброса (reset.sh)

#!/bin/bash
echo "ВНИМАНИЕ: Это удалит все данные из базы!"
read -p "Продолжить? (y/N) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
    docker-compose down -v
    docker-compose up --build -d
    echo "Система сброшена и перезапущена"
fi

Полезные ссылки после запуска