Appearance
GMG Site Operations
Обновлено: 2026-06-22
Runbook для текущей эксплуатации отдельного проекта gmg.
1. Активный контур
- Workspace:
/home/admin/workspace/gmg - Live host:
https://gmg.landing.designcorp.eu/ - Live root:
/var/www/gmg - Nginx config:
/etc/nginx/sites-available/gmg.landing.designcorp.eu - WordPress preview host:
https://wp.gmg.landing.designcorp.eu/ - WordPress preview runtime:
/opt/designcorp/gmg/wp2 - WordPress preview nginx config:
/etc/nginx/sites-available/wp.gmg.landing.designcorp.eu
2. Важная особенность текущей доставки
Утвержденный static site https://gmg.landing.designcorp.eu/ является источником правды для переноса в WordPress. Сайт собирается из репозитория gmg через GitHub Actions на main и деплоится в /var/www/gmg.
- не править
/var/www/gmgвручную; - для static reference использовать GitHub Actions workflow
Build and deploy GMG site; - перед переносом страницы в WordPress сверять ее с live reference
https://gmg.landing.designcorp.eu/.
WordPress + Elementor preview host https://wp.gmg.landing.designcorp.eu/ — активный контур переноса static reference в редактируемые Elementor-страницы. Этот host не заменяет действующий static live-host до отдельного решения.
Старый тестовый WordPress runtime /opt/designcorp/gmg/prod удален. Прежний домен wp2.gmg.landing.designcorp.eu выключен; активный WP-домен теперь wp.gmg.landing.designcorp.eu.
Активная WordPress theme монтируется в runtime через bind mount:
bash
/opt/designcorp/gmg/wp2/themes/gmg-starterКанонический source этой theme в workspace:
bash
/home/admin/workspace/gmg/deploy/wordpress/themes/gmg-starter3. Канонический workflow правок
- Проверить статус репозитория:
bash
cd /home/admin/workspace/gmg
git status --shortДля static reference вносить изменения в git-источник проекта, затем деплоить через GitHub Actions
mainworkflow. Не редактировать live root/var/www/gmgвручную.Проверить live host:
bash
curl -I https://gmg.landing.designcorp.eu/Для WordPress-переноса работать в Elementor на
https://wp.gmg.landing.designcorp.eu/, используяhttps://gmg.landing.designcorp.eu/как 1:1 reference.Для theme/CSS/assets править workspace source и деплоить theme в active runtime:
bash
cd /home/admin/workspace/gmg
deploy/wordpress/apply-theme.sh- Если менялся nginx-конфиг:
bash
sudo -n nginx -t
sudo -n systemctl reload nginx4. Static rollback
Static rollback выполняется через GitHub/git source и повторный deploy workflow. Не откатывать /var/www/gmg вручную как source of truth.
После rollback/deploy:
bash
curl -I https://gmg.landing.designcorp.eu/5. Incident checklist
Если static site перестал открываться:
- проверить
curl -I https://gmg.landing.designcorp.eu/; - проверить конфиг
/etc/nginx/sites-available/gmg.landing.designcorp.eu; - проверить
sudo -n systemctl status nginx; - если конфиг недавно менялся, проверить
sudo -n nginx -t.
Для WordPress preview:
docker compose --env-file /opt/designcorp/gmg/wp2/.env -f /opt/designcorp/gmg/wp2/docker-compose.yml psdocker compose --env-file /opt/designcorp/gmg/wp2/.env -f /opt/designcorp/gmg/wp2/docker-compose.yml logs --tail=100 wordpress- проверить конфиг
/etc/nginx/sites-available/wp.gmg.landing.designcorp.eu - проверить
curl -I https://wp.gmg.landing.designcorp.eu/ - проверить WordPress URL:
bash
docker compose --env-file /opt/designcorp/gmg/wp2/.env -f /opt/designcorp/gmg/wp2/docker-compose.yml --profile tools run --rm cli option get home
docker compose --env-file /opt/designcorp/gmg/wp2/.env -f /opt/designcorp/gmg/wp2/docker-compose.yml --profile tools run --rm cli option get siteurl6. WordPress Elementor workflow
Source of truth:
bash
https://gmg.landing.designcorp.eu/Active WordPress:
bash
https://wp.gmg.landing.designcorp.eu/Правило переноса: страницы собирать в Elementor как редактируемые секции/контейнеры/виджеты, а не вставлять static HTML одной простыней. Theme отвечает за системный слой: header/footer, tokens, global CSS, assets, helpers.
Активная theme runtime:
bash
/opt/designcorp/gmg/wp2/themes/gmg-starterАктивная theme source:
bash
/home/admin/workspace/gmg/deploy/wordpress/themes/gmg-starterДеплой theme:
bash
cd /home/admin/workspace/gmg
deploy/wordpress/apply-theme.shapply-theme.sh копирует workspace theme в /opt/designcorp/gmg/wp2/themes/gmg-starter, сбрасывает WordPress cache и Elementor CSS. Он не пересоздает WordPress-контейнер и не копирует compose-файл. --activate использовать только если нужно заново активировать theme и menu locations.
Для Elementor-страниц сначала использовать общий parity layer:
bash
/home/admin/workspace/gmg/deploy/wordpress/themes/gmg-starter/assets/css/wp-parity-overrides.cssВ page-specific CSS оставлять только уникальную композицию страницы. Повторяемые вещи не дублировать по страницам:
- hero signals и маленькие badges должны быть compact inline pills с правильным green tint;
- hex icons должны рендериться через
.hex-icon.elementor-widgetи стоять слева от текста в icon-left блоках; - glyph внутри green hex должен оставаться светлым через
--hex-icon-color, не наследовать GMG green, иначе иконка визуально пропадает на зеленом hex-фоне; - текст под заголовками должен иметь системный gap, а не прилипать к title;
- в Elementor text-editor может не быть
.elementor-widget-container, поэтому spacing задавать также на самом.elementor-widget-text-editorи соседних widget wrappers; - card buttons, включая
More, должны уходить вниз через flex layout и не прилипать к copy; - размеры/вес/цвет heading и body сверять с
https://gmg.landing.designcorp.eu/, а не с дефолтами Elementor.
После правок проверить:
bash
curl -I https://wp.gmg.landing.designcorp.eu/
curl -sL https://wp.gmg.landing.designcorp.eu/ | rg "wp-content/themes/gmg-starter|elementor-page"
curl -sL https://wp.gmg.landing.designcorp.eu/about-gmg/ | rg "About GMG|elementor-page"Для визуальной приемки page transfer проверять минимум desktop 1440px и mobile 390px: hero badges, section badges, icon-left layout, heading/copy spacing, card button spacing, colors, font weights, image crops.
7. Retired hosts
Следующие hosts выведены из эксплуатации и не должны использоваться как рабочий GMG-контур:
https://gmg2.landing.designcorp.eu/https://gmg3.landing.designcorp.eu/https://wp2.gmg.landing.designcorp.eu/