69 lines
3.2 KiB
Markdown
69 lines
3.2 KiB
Markdown
# mes_core
|
||
|
||
Система управления производством (ShiftFlow MES)
|
||
|
||
## 📥 Как пушить код (Шпаргалка)
|
||
|
||
Если внес изменения в проект и готов отправить их на сервер `ProdServ`:
|
||
|
||
1. **Подготовь файлы**:
|
||
`git add .`
|
||
2. **Запечатай изменения**:
|
||
`git commit -m "Подправил докерфайл сборки контейнера"`
|
||
3. **Отправляй в полет**:
|
||
`git push origin main`
|
||
|
||
### 💊 Таблетка: Если не пушится (сброс авторизации)
|
||
Если Git "забыл" пароль или выдает ошибку Permission Denied:
|
||
|
||
|
||
# Очищаем старые привязки
|
||
```bash
|
||
git config --global --unset credential.helper
|
||
```
|
||
|
||
# Устанавливаем менеджер заново (для Windows)
|
||
```bash
|
||
git config --global credential.helper manager
|
||
```
|
||
# Снова пушим и вводим логин/пароль в окне
|
||
```bash
|
||
git push origin main
|
||
```
|
||
|
||
# 🚀 ShiftFlow MES - Инструкция по деплою (Production)
|
||
|
||
### 🧩 Общая архитектура
|
||
Система работает в связке из 3-х контейнеров:
|
||
1. **db**: PostgreSQL 15 (хранит все данные).
|
||
2. **web**: Django + Gunicorn (логика приложения).
|
||
3. **nginx**: Веб-сервер (раздает статику и проксирует запросы на Django).
|
||
|
||
---
|
||
|
||
### 🛠 Как это работает (Автоматизация)
|
||
Мы используем **CI/CD через Gitea Actions**. Тебе не нужно заходить на сервер руками.
|
||
|
||
1. **Push в main**: Как только ты пушишь код, раннер на `ProdServ` просыпается.
|
||
2. **Сборка**: Docker пересобирает образ `web`, если изменились `requirements.txt` или код.
|
||
3. **Запуск**:
|
||
- `entrypoint.sh` автоматически накатывает миграции (`migrate`).
|
||
- `collectstatic` собирает все стили в общую папку для Nginx.
|
||
- Создается суперпользователь (если его еще нет) из данных `.env`.
|
||
|
||
---
|
||
|
||
### 📁 Важные папки на сервере `ProdServ`
|
||
Проект живет здесь: `/home/ack/projects/mes_core/`
|
||
|
||
* **staticfiles/** — здесь лежат стили и скрипты. Если админка стала "белой", проверь права этой папки (`chmod 755`).
|
||
* **media/** — здесь будут лежать загруженные фото и файлы.
|
||
* **.env** — здесь лежат все пароли. **Никогда не удаляй его!**
|
||
|
||
---
|
||
|
||
### 🆘 Что делать, если "все упало"?
|
||
Если сайт по адресу `192.168.1.108` не открывается:
|
||
1. Проверь логи контейнеров: `docker compose logs -f`.
|
||
2. Убедись, что порты в `docker-compose.yml` стоят `80:80`.
|
||
3. Перезапусти всё одной командой: `docker compose up -d --build`. |