| Server IP : 54.37.205.81 / Your IP : 216.73.216.76 Web Server : nginx/1.22.1 System : Linux vps-249481fa 6.1.0-50-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.176-1 (2026-07-02) x86_64 User : debian ( 1000) PHP Version : 8.2.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/app.copyrightchain.it/ |
Upload File : |
DEPLOY - CopyrightChain App (Tower: Growth + Systems) + AI Gateway (server-side keys)
Obiettivo
- "Tower > Grow" = Marketing/Growth per te (admin) per generare testi e visual.
- "Tower > Systems" = sezione tecnica: endpoint, token, chiavi AI, test connessioni.
- Le chiavi AI NON finiscono nel browser: vengono salvate nel gateway su VPS.
CONTENUTO ZIP
1) patch/frontend/ -> file da copiare dentro /var/www/app.copyrightchain.it/copyrightchain_app
2) server/ai-gateway -> microservizio Python (porta 5060) + config + systemd + nginx snippet
----------------------------------------
A) BACKUP (una volta)
----------------------------------------
sudo mkdir -p /var/www/app.copyrightchain.it/_backup
sudo cp -a /var/www/app.copyrightchain.it/copyrightchain_app "/var/www/app.copyrightchain.it/_backup/copyrightchain_app_$(date +%F_%H%M)"
sudo cp -a /var/www/app.copyrightchain.it/html "/var/www/app.copyrightchain.it/_backup/html_$(date +%F_%H%M)"
----------------------------------------
B) PATCH FRONTEND (Tower)
----------------------------------------
cd /var/www/app.copyrightchain.it/copyrightchain_app
# 1) Scompatta questo zip in una cartella temporanea
cd /var/www/app.copyrightchain.it
sudo mkdir -p _tmp_bundle
sudo unzip -o COPYRIGHTCHAIN_DEPLOY_BUNDLE.zip -d _tmp_bundle
# 2) Copia i file patch dentro il progetto
sudo rsync -av --delete _tmp_bundle/patch/frontend/ /var/www/app.copyrightchain.it/copyrightchain_app/
# 3) Build
cd /var/www/app.copyrightchain.it/copyrightchain_app
npm ci
npm run build
# 4) Pubblica in NGINX webroot
sudo rsync -av --delete dist/ /var/www/app.copyrightchain.it/html/
sudo chown -R www-data:www-data /var/www/app.copyrightchain.it/html
----------------------------------------
C) INSTALLA AI GATEWAY (server-side keys)
----------------------------------------
# 1) Copia cartella gateway
sudo rsync -av _tmp_bundle/server/ai-gateway/ /opt/ccp-ai-gateway/
# 2) Virtualenv + deps
cd /opt/ccp-ai-gateway
sudo apt-get update
sudo apt-get install -y python3-venv
python3 -m venv .venv
./.venv/bin/pip install -r requirements.txt
# 3) Config (token + keys)
sudo mkdir -p /etc/ccp-ai-gateway
sudo cp -n /opt/ccp-ai-gateway/ccp-ai-gateway.env.example /etc/ccp-ai-gateway/ccp-ai-gateway.env
sudo nano /etc/ccp-ai-gateway/ccp-ai-gateway.env
# 4) systemd
sudo cp /opt/ccp-ai-gateway/ccp-ai-gateway.service /etc/systemd/system/ccp-ai-gateway.service
sudo systemctl daemon-reload
sudo systemctl enable --now ccp-ai-gateway
sudo systemctl --no-pager -l status ccp-ai-gateway
# 5) NGINX reverse-proxy /ai -> 127.0.0.1:5060
# Inserisci lo snippet dentro il server { ... } di app.copyrightchain.it (443)
sudo nano /etc/nginx/sites-available/app.copyrightchain.it
# incolla:
# location /ai/ {
# proxy_pass http://127.0.0.1:5060/;
# proxy_set_header Host $host;
# proxy_set_header X-Real-IP $remote_addr;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# }
sudo nginx -t && sudo systemctl reload nginx
----------------------------------------
D) TEST RAPIDO
----------------------------------------
# Health
curl -sS https://app.copyrightchain.it/ai/health
# Test text (usa token admin)
curl -sS -X POST https://app.copyrightchain.it/ai/text \
-H "Content-Type: application/json" \
-H "X-CCP-Token: <METTI_CCP_AI_ADMIN_TOKEN>" \
-d '{"provider":"openai","prompt":"Scrivi 3 headline per CopyrightChain"}' | head
----------------------------------------
E) NOTE
----------------------------------------
- La UI Tower>Systems salva il token admin AI in localStorage e chiama /ai/admin/set-keys
- Se preferisci NON salvare le chiavi via UI, puoi metterle solo nel file /etc/ccp-ai-gateway/ccp-ai-gateway.env