Для передачи Claude Code или новому разработчику.
Актуально на 12.07.2026.
Сайт poreklame.tech переходит с Wagtail (Django CMS) на Astro — статический генератор. Инфраструктура готова, код переносится с нуля.
| Параметр | Значение |
|---|---|
| Сервер | Server 1, 159.194.225.30 |
| SSH | ssh deploy@159.194.225.30 -p 18953 |
| Инструменты | Node.js 22, npm 10.9, pnpm 11.12 |
| Git | git@git.poreklame.tech:poreklameadmin/poreklame-site.git |
| Окружение | Ветка | URL | Auth |
|---|---|---|---|
| Dev | dev |
https://dev.poreklame.tech |
poreklame / o3llnwPFs0tHoqZ+ |
| Stage | stage |
https://stage.poreklame.tech |
poreklame / gD9skms4J0t3/RIz |
| Prod | master |
https://poreklame.tech |
— |
Все три на HTTPS (Let's Encrypt), автообновление.
Автоматический через Gitea Actions (.gitea/workflows/deploy.yml):
git push dev → автосборка → /var/www/poreklame/dev/git push stage → автосборка → /var/www/poreklame/stage/git push master → автосборка → /var/www/poreklame/prod/# 1. Подключиться к серверу
ssh deploy@159.194.225.30 -p 18953
# 2. Клонировать репозиторий
cd ~/work
git clone git@git.poreklame.tech:poreklameadmin/poreklame-site.git
cd poreklame-site
# 3. Переключиться на ветку dev (разработка)
git checkout dev
# 4. Установить зависимости
pnpm install
# 5. Запустить dev-сервер
pnpm run dev
# 6. Собрать для деплоя
pnpm run build
# → результат в dist/
# 7. Ручной деплой в dev (если нужно быстро)
rsync -avz --delete dist/ /var/www/poreklame/dev/
poreklame-site/
├── .gitea/
│ └── workflows/
│ └── deploy.yml # CI/CD (уже готов)
├── src/
│ ├── pages/ # Astro страницы
│ ├── components/ # Astro компоненты
│ ├── layouts/ # Шаблоны
│ └── assets/ # SCSS, изображения, шрифты
├── public/ # Статика (favicon, robots.txt)
├── astro.config.mjs
├── package.json # "build": "astro build"
├── pnpm-lock.yaml
└── dist/ # Результат сборки (в .gitignore)
Workflow ожидает:
package.json с "build": "astro build" (или другой билдер)pnpm-lock.yaml для воспроизводимостиdist/Если билдер не Astro — поправить deploy.yml.
# Статус runner
sudo systemctl status gitea-runner
# Перезапуск runner
sudo systemctl restart gitea-runner
# Проверить конфиг nginx
sudo nginx -t
# Перезагрузить nginx
sudo systemctl reload nginx
# Посмотреть что в папках окружений
ls -la /var/www/poreklame/dev/
ls -la /var/www/poreklame/stage/
ls -la /var/www/poreklame/prod/
# Очистить папку и задеплоить заново
rm -rf /var/www/poreklame/dev/*
rsync -avz dist/ /var/www/poreklame/dev/
X-Robots-Tag: noindex, кэш статики 1 час (dev)/etc/nginx/sites-available/poreklame-{prod,stage,dev}По инфраструктуре — @denis_poreklame_bot (Денис, DevOps)
По коду — Илья (python-dev)
По задачам — OpenProject: https://projects.poreklame.tech
Создано: 12.07.2026. Автор: Денис (DevOps)