cms in docker compose

This commit is contained in:
2026-04-21 19:54:04 +07:00
parent 34eaa55e70
commit ae8fb589e1
2 changed files with 25 additions and 12 deletions
+9 -10
View File
@@ -1,4 +1,4 @@
name: Deploy Netrunner Landing name: Deploy Frontend & CMS
on: on:
push: push:
@@ -17,24 +17,23 @@ jobs:
host: ${{ secrets.VPS_IP }} host: ${{ secrets.VPS_IP }}
username: root username: root
key: ${{ secrets.SSH_PRIVATE_KEY }} key: ${{ secrets.SSH_PRIVATE_KEY }}
# Исключаем тяжелые папки, чтобы деплой был моментальным # Копируем всё, кроме тяжелого мусора
source: ".,!.git,!node_modules,!.next" source: ".,!.git,!node_modules,!.next"
target: "/root/netrunner-landing" target: "/root/netrunner-frontend"
- name: Build and Restart Docker Container - name: Docker Run
uses: appleboy/ssh-action@v1.0.3 uses: appleboy/ssh-action@v1.0.3
with: with:
host: ${{ secrets.VPS_IP }} host: ${{ secrets.VPS_IP }}
username: root username: root
key: ${{ secrets.SSH_PRIVATE_KEY }} key: ${{ secrets.SSH_PRIVATE_KEY }}
script: | script: |
cd /root/netrunner-landing cd /root/netrunner-frontend
# Убиваем старые процессы в pm2, если они еще живы
pm2 stop all || true
# Останавливаем старый контейнер # Поднимаем Docker (Next.js + PocketBase)
docker compose down
# Собираем новый образ и запускаем в фоне
docker compose up -d --build docker compose up -d --build
# Очищаем старые (dangling) Docker образы, чтобы не забивать диск # Чистим систему от старых образов
docker image prune -f docker image prune -f
+16 -2
View File
@@ -4,9 +4,23 @@ services:
container_name: netrunner-landing container_name: netrunner-landing
restart: always restart: always
ports: ports:
# Пробрасываем ТОЛЬКО на локалхост, чтобы наружу не торчало
- "127.0.0.1:3000:3000" - "127.0.0.1:3000:3000"
environment: environment:
- NODE_ENV=production - NODE_ENV=production
# Если лендингу нужны ENV переменные для PocketBase:
- NEXT_PUBLIC_PB_URL=https://netrunner-vpn.com/cms - NEXT_PUBLIC_PB_URL=https://netrunner-vpn.com/cms
cms:
image: ghcr.io/muchobien/pocketbase:latest
container_name: netrunner-cms
restart: always
ports:
- "127.0.0.1:8090:8080"
volumes:
- ./pb_data:/pb_data
- ./pb_migrations:/pb_migrations
command:
- /usr/local/bin/pocketbase
- serve
- --http=0.0.0.0:8080
- --dir=/pb_data
- --migrationsDir=/pb_migrations