Infra: unit systemd de Odoo (autoarranque) y vhost nginx
This commit is contained in:
21
infra/odoo-skeen.service
Normal file
21
infra/odoo-skeen.service
Normal file
@@ -0,0 +1,21 @@
|
||||
[Unit]
|
||||
Description=Odoo SKEEN (skeen-odoo venv)
|
||||
After=network.target postgresql.service docker.service
|
||||
Wants=postgresql.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
WorkingDirectory=/root/skeen-odoo
|
||||
Environment=SUPABASE_URL=http://192.168.10.114:8000
|
||||
Environment=SUPABASE_SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoic2VydmljZV9yb2xlIiwiaXNzIjoic3VwYWJhc2UiLCJpYXQiOjE2NDE3NjkyMDAsImV4cCI6MTc5OTUzNTYwMH0.XA05Pgn-gkEKaZEaHYFc9DAyP45uNJdsl8DL9axUxbc
|
||||
Environment=WACRM_API_URL=http://localhost:3000
|
||||
Environment=WACRM_API_KEY=wacrm_live_1m2xkLq9S75b8AWGB4a_tPPiFmJlJJ7wJHAPi9BZWcs
|
||||
Environment=HERMES_BRIDGE_URL=http://localhost:8090
|
||||
ExecStart=/root/odoo-venv/bin/python /root/skeen-odoo/odoo-bin -c /root/skeen-odoo/odoo.conf --logfile=/tmp/odoo.log
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
TimeoutStartSec=120
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
125
infra/skeen-crm
Normal file
125
infra/skeen-crm
Normal file
@@ -0,0 +1,125 @@
|
||||
server {
|
||||
listen 80;
|
||||
server_name skeencrm.consultoria-as.com;
|
||||
|
||||
# Portal nativo WACRM (Next.js en localhost:3000)
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:3000;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_read_timeout 120s;
|
||||
proxy_buffering off;
|
||||
}
|
||||
|
||||
# WebSocket / hot reload (Next.js usa WS en dev; en prod es SSE para HMR si aplica)
|
||||
location /_next/webpack-hmr {
|
||||
proxy_pass http://127.0.0.1:3000/_next/webpack-hmr;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host $host;
|
||||
}
|
||||
|
||||
# APIs y assets de Next.js
|
||||
location /_next/ {
|
||||
proxy_pass http://127.0.0.1:3000/_next/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_cache_valid 200 1d;
|
||||
}
|
||||
|
||||
location /api/ {
|
||||
proxy_pass http://127.0.0.1:3000/api/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_read_timeout 120s;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
server_name skeen.consultoria-as.com localhost _;
|
||||
|
||||
# Frontend React (SKEEN Classic)
|
||||
location / {
|
||||
root /var/www/skeen-frontend;
|
||||
try_files $uri $uri/ /index.html;
|
||||
add_header Cache-Control "no-cache";
|
||||
}
|
||||
|
||||
# Odoo API para el frontend
|
||||
location /api/odoo/ {
|
||||
proxy_pass http://127.0.0.1:8069/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_read_timeout 120s;
|
||||
}
|
||||
|
||||
# WACRM API
|
||||
location /api/v1/ {
|
||||
proxy_pass http://127.0.0.1:3000/api/v1/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
# WACRM WhatsApp webhook de Meta
|
||||
location /api/whatsapp/webhook {
|
||||
proxy_pass http://127.0.0.1:3000/api/whatsapp/webhook;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
# Odoo backend web (acceso directo al ERP)
|
||||
location /web/ {
|
||||
proxy_pass http://127.0.0.1:8069/web/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_read_timeout 120s;
|
||||
}
|
||||
|
||||
location /web/static/ {
|
||||
proxy_pass http://127.0.0.1:8069/web/static/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_cache_valid 200 1d;
|
||||
}
|
||||
|
||||
# Hermes / OpenClaw webhooks (puerto 8080)
|
||||
location /webhook/ {
|
||||
proxy_pass http://127.0.0.1:8080/webhook/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
}
|
||||
|
||||
# SKEEN Hermes WACRM bridge (puerto 8090)
|
||||
location /webhook/wacrm {
|
||||
proxy_pass http://127.0.0.1:8090/webhook/wacrm;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_read_timeout 60s;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user