Перейти к основному содержимому

Вопросы и решения

Решение проблем с запуском

Проверка и устранение занятых процессами портов

  • Проверка занятых портов
sudo netstat -tlnp | grep ':80\|:443'
  • Остановка служб, занимающих порты
sudo systemctl stop apache2  # если установлен Apache
sudo systemctl stop nginx # если установлен системный Nginx

Проверка прав доступа

  • Исправление прав на каталоги проекта
sudo chown -R $USER:$USER ./yougile ./nginx ./certbot
chmod -R 755 ./yougile ./nginx ./certbot

Недостаточно памяти Docker

  • Проверка лимитов Docker
docker info | grep -i memory
  • Увеличение памяти Docker (Docker Desktop)

Settings -> Resources -> Memory -> 4GB или больше

YouGile не запускается

  • Проверка логов при запуске
docker compose up yougile
  • Проверка health check
docker compose ps
  • Проверка портов внутри контейнера
docker compose exec yougile netstat -tlnp

Решение проблем с SSL/HTTPS

DNS не настроен

  • Проверка A записи домена
nslookup your-domain.com
dig A your-domain.com
  • Проверка доступности с внешнего IP
curl -I http://your-external-ip

Certbot не может получить сертификат

  • Проверка доступности ACME challenge
curl http://your-domain.com/.well-known/acme-challenge/test
  • Логи Certbot
docker compose run --rm certbot certificates
docker compose logs certbot
  • Тестовый запуск (dry-run)
docker compose run --rm certbot certonly --webroot -w /var/www/certbot -d your-domain.com --dry-run

Firewall блокирует порты

# Ubuntu/Debian
sudo ufw allow 80
sudo ufw allow 443
sudo ufw status

# CentOS/RHEL
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Диагностические команды

  • Проверка конфигурации Nginx
docker compose exec nginx nginx -t
  • Перезагрузка конфигурации Nginx без перезапуска
docker compose exec nginx nginx -s reload
  • Проверка процессов в контейнере
docker compose exec yougile ps aux
  • Проверка сетевого подключения
docker compose exec yougile ping nginx
docker compose exec nginx ping yougile
  • Просмотр переменных окружения
docker compose exec yougile env
  • Проверка монтирования volumes
docker compose exec yougile ls -la /opt/yougile/
  • Тест подключения к YouGile изнутри Nginx
docker compose exec nginx curl -v http://yougile:8001

Восстановление после сбоя

  • Запуск полной пересборки без кэша
docker compose down
docker compose build --no-cache
docker compose up -d
  • Очистка Docker и повторная установка
docker system prune -f
docker volume prune -f # ВНИМАНИЕ: удалит неиспользуемые данные!
./yougile-docker # повторная инициализация

Решение проблем с производительностью

  • Мониторинг ресурсов
docker stats --no-stream
  • Проверка дискового пространства
df -h
docker system df
  • Очистка логов Docker
sudo truncate -s 0 /var/lib/docker/containers/*/*-json.log
  • Оптимизация Docker
echo '{"log-driver":"json-file","log-opts":{"max-size":"10m","max-file":"3"}}' | sudo tee /etc/docker/daemon.json
sudo systemctl restart docker