Produzione su VPS
Con Nginx Reverse Proxy
Se vuoi girare più applicazioni sulla stessa macchina:
server {
listen 80;
server_name fatturino.tuodominio.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name fatturino.tuodominio.com;
ssl_certificate /etc/letsencrypt/live/fatturino.tuodominio.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/fatturino.tuodominio.com/privkey.pem;
location / {
proxy_pass http://localhost:8000;
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;
}
}
SSL con Let's Encrypt
# Installa certbot
sudo apt-get install certbot python3-certbot-nginx
# Genera certificato
sudo certbot certonly --nginx -d fatturino.tuodominio.com
# Auto-renewal è automatico
Raspberry Pi / Dispositivi ARM
Fatturino gira benissimo su Raspberry Pi 4 (4GB RAM minimo consigliato).
# Assicurati di usare l'immagine ARM di Docker
docker pull arm32v7/postgres
# Nel docker-compose.yml:
services:
db:
image: arm32v7/postgres:latest
Variabili d'Ambiente Importanti
Nel .env:
APP_ENV=production
APP_DEBUG=false
DB_CONNECTION=pgsql
DB_HOST=db
DB_DATABASE=fatturino
DB_USERNAME=postgres
DB_PASSWORD=segretissima
REDIS_HOST=redis
QUEUE_CONNECTION=redis
APP_URL=https://fatturino.tuodominio.com
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_USERNAME=tuo@gmail.com
Backup Database
# Backup giornaliero con cron
0 2 * * * docker compose exec -T db pg_dump -U postgres fatturino | gzip > /backup/fatturino-$(date +%Y%m%d).sql.gz
Sicurezza
Firewall
# UFW
sudo ufw allow 22/tcp # SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw default deny incoming
sudo ufw enable
Updates Regolari
# Aggiorna immagini Docker
docker compose pull
docker compose up -d
# Aggiorna Laravel (dentro il container)
docker compose exec app php artisan migrate
Prossimi Passi
- Fatturazione SDI — Come generare e inviare fatture
- OpenAPI Integration — Configurazione completa
- Sistema Plugin — Estendi Fatturino