🔧 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
This commit is contained in:
@@ -392,7 +392,7 @@ docker logs postgres_db --tail 100 -f
|
|||||||
## 👤 Шаг 8: Создание суперпользователя
|
## 👤 Шаг 8: Создание суперпользователя
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker exec -it django_app python manage.py createsuperuser
|
docker exec -it django_app python smartsoltech/manage.py createsuperuser
|
||||||
```
|
```
|
||||||
|
|
||||||
## 📊 Шаг 9: Настройка мониторинга (опционально)
|
## 📊 Шаг 9: Настройка мониторинга (опционально)
|
||||||
@@ -455,10 +455,10 @@ docker compose -f docker-compose.prod.yml up -d
|
|||||||
sleep 10
|
sleep 10
|
||||||
|
|
||||||
# Применение миграций
|
# Применение миграций
|
||||||
docker exec django_app python manage.py migrate
|
docker exec django_app python smartsoltech/manage.py migrate
|
||||||
|
|
||||||
# Сборка статики
|
# Сборка статики
|
||||||
docker exec django_app python manage.py collectstatic --noinput
|
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
|
||||||
|
|
||||||
# Проверка статуса
|
# Проверка статуса
|
||||||
docker compose -f docker-compose.prod.yml ps
|
docker compose -f docker-compose.prod.yml ps
|
||||||
@@ -525,7 +525,7 @@ docker compose -f docker-compose.prod.yml restart django_app
|
|||||||
### Проблема: Статические файлы не загружаются
|
### Проблема: Статические файлы не загружаются
|
||||||
```bash
|
```bash
|
||||||
# Пересборка статики
|
# Пересборка статики
|
||||||
docker exec django_app python manage.py collectstatic --noinput
|
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
|
||||||
|
|
||||||
# Проверка прав
|
# Проверка прав
|
||||||
docker exec nginx ls -la /var/www/static/
|
docker exec nginx ls -la /var/www/static/
|
||||||
|
|||||||
@@ -345,8 +345,8 @@ sleep 10
|
|||||||
| `./quick-deploy.sh` | Быстрый деплой без проверок |
|
| `./quick-deploy.sh` | Быстрый деплой без проверок |
|
||||||
| `docker compose ps` | Статус контейнеров |
|
| `docker compose ps` | Статус контейнеров |
|
||||||
| `docker logs django_app -f` | Просмотр логов в реальном времени |
|
| `docker logs django_app -f` | Просмотр логов в реальном времени |
|
||||||
| `docker exec django_app python manage.py migrate` | Ручное применение миграций |
|
| `docker exec django_app python smartsoltech/manage.py migrate` | Ручное применение миграций |
|
||||||
| `docker exec django_app python manage.py collectstatic --noinput` | Ручная сборка статики |
|
| `docker exec django_app python smartsoltech/manage.py collectstatic --noinput` | Ручная сборка статики |
|
||||||
| `ls -lh /var/backups/smartsoltech/` | Список бэкапов |
|
| `ls -lh /var/backups/smartsoltech/` | Список бэкапов |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
114
SERVER_FIX.md
Normal file
114
SERVER_FIX.md
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
# 🔧 Исправление на сервере
|
||||||
|
|
||||||
|
## Проблема
|
||||||
|
```
|
||||||
|
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
|
||||||
@@ -215,8 +215,8 @@ run_migrations() {
|
|||||||
# Ожидание запуска БД
|
# Ожидание запуска БД
|
||||||
sleep 10
|
sleep 10
|
||||||
|
|
||||||
if docker exec django_app python manage.py migrate --check &>/dev/null; then
|
if docker exec django_app python smartsoltech/manage.py migrate --check &>/dev/null; then
|
||||||
docker exec django_app python manage.py migrate --noinput
|
docker exec django_app python smartsoltech/manage.py migrate --noinput
|
||||||
log_success "Миграции применены"
|
log_success "Миграции применены"
|
||||||
else
|
else
|
||||||
log_error "Ошибка при проверке миграций"
|
log_error "Ошибка при проверке миграций"
|
||||||
@@ -228,7 +228,7 @@ run_migrations() {
|
|||||||
collect_static() {
|
collect_static() {
|
||||||
log_info "Сборка статических файлов..."
|
log_info "Сборка статических файлов..."
|
||||||
|
|
||||||
docker exec django_app python manage.py collectstatic --noinput
|
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
|
||||||
|
|
||||||
log_success "Статические файлы собраны"
|
log_success "Статические файлы собраны"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ sleep 10
|
|||||||
|
|
||||||
# Применение миграций и сборка статики
|
# Применение миграций и сборка статики
|
||||||
echo -e "${BLUE}6/6${NC} Применение миграций и сборка статики..."
|
echo -e "${BLUE}6/6${NC} Применение миграций и сборка статики..."
|
||||||
docker exec django_app python manage.py migrate --noinput
|
docker exec django_app python smartsoltech/manage.py migrate --noinput
|
||||||
docker exec django_app python manage.py collectstatic --noinput
|
docker exec django_app python smartsoltech/manage.py collectstatic --noinput
|
||||||
|
|
||||||
# Проверка
|
# Проверка
|
||||||
echo ""
|
echo ""
|
||||||
|
|||||||
Reference in New Issue
Block a user