Files
smartsoltech_site/SERVER_FIX.md
Andrew K. Choi a2317bc619 🔧 Fix manage.py path in deployment scripts
- Changed 'python manage.py' to 'python smartsoltech/manage.py' in all deployment scripts
- Fixed deploy.sh, quick-deploy.sh
- Updated DEPLOYMENT_GUIDE.md and DEPLOYMENT_SCRIPTS.md documentation
- Added SERVER_FIX.md with instructions for server fix

Fixes issue: python: can't open file '/app/manage.py': [Errno 2] No such file or directory
2025-11-24 11:38:11 +09:00

115 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🔧 Исправление на сервере
## Проблема
```
python: can't open file '/app/manage.py': [Errno 2] No such file or directory
```
## Причина
В контейнере `django_app` файл `manage.py` находится в подпапке `smartsoltech/`, а не в корне `/app/`.
## ✅ Решение
### Вариант 1: Обновить код из Git (рекомендуется)
```bash
cd /opt/smartsoltech_site
git pull origin master
./quick-deploy.sh
```
### Вариант 2: Исправить вручную
**Исправить только для текущего сеанса:**
```bash
# Применить миграции
docker exec django_app python smartsoltech/manage.py migrate --noinput
# Собрать статику
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
# Создать суперпользователя
docker exec -it django_app python smartsoltech/manage.py createsuperuser
# Проверить статус
docker compose ps
```
**Исправить скрипт навсегда:**
```bash
# Редактировать quick-deploy.sh
nano quick-deploy.sh
# Найти строки:
docker exec django_app python manage.py migrate --noinput
docker exec django_app python manage.py collectstatic --noinput
# Заменить на:
docker exec django_app python smartsoltech/manage.py migrate --noinput
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
# Сохранить: Ctrl+O, Enter, Ctrl+X
```
## 🧪 Проверка работоспособности
```bash
# Проверить страницы
curl -I http://localhost:8000/
curl -I http://localhost:8000/services/
curl -I http://localhost:8000/blog/
# Проверить логи
docker logs django_app --tail 50
# Проверить статус контейнеров
docker compose ps
```
## ✅ Ожидаемый результат
После исправления команды должны выполниться успешно:
```
6/6 Применение миграций и сборка статики...
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions, web, comunication
Running migrations:
No migrations to apply.
128 static files copied to '/app/staticfiles'.
Проверка статуса контейнеров:
NAME IMAGE STATUS
django_app ... Up (healthy)
postgres_db ... Up (healthy)
telegram_bot ... Up
```
## 📝 Все правильные команды для сервера
```bash
# Миграции
docker exec django_app python smartsoltech/manage.py migrate
# Статика
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
# Создать суперпользователя
docker exec -it django_app python smartsoltech/manage.py createsuperuser
# Проверить миграции
docker exec django_app python smartsoltech/manage.py showmigrations
# Открыть Django shell
docker exec -it django_app python smartsoltech/manage.py shell
# Создать приложение
docker exec django_app python smartsoltech/manage.py startapp myapp
```
---
**Создано:** 24 ноября 2025 г.
**Исправлено в:** deploy.sh, quick-deploy.sh, DEPLOYMENT_GUIDE.md, DEPLOYMENT_SCRIPTS.md