Вопросы и решения
Решение проблем с запуском
Проверка и устранение занятых процессами портов
- Проверка занятых портов
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