<?xml version="1.0" encoding="UTF-8" standalone="no"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" version="2.0">

<channel>
	<title>RaffaeleChiatto.com</title>
	<atom:link href="https://www.raffaelechiatto.com/feed/" rel="self" type="application/rss+xml"/>
	<link>https://www.raffaelechiatto.com</link>
	<description>Il Blog di Informatica a 360°</description>
	<lastBuildDate>Wed, 07 Oct 2026 05:56:23 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.raffaelechiatto.com/wp-content/uploads/2025/05/favicon-150x150.png</url>
	<title>RaffaeleChiatto.com</title>
	<link>https://www.raffaelechiatto.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<itunes:explicit>no</itunes:explicit><itunes:subtitle>Il Blog di Informatica a 360°</itunes:subtitle><itunes:category text="Technology"><itunes:category text="Gadgets"/></itunes:category><item>
		<title>Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04</title>
		<link>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-formbricks-su-ubuntu-server-26-04/</link>
					<comments>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-formbricks-su-ubuntu-server-26-04/#respond</comments>
		
		<dc:creator><![CDATA[Raffaele Chiatto]]></dc:creator>
		<pubDate>Wed, 07 Oct 2026 05:56:23 +0000</pubDate>
				<category><![CDATA[Formbricks]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[cube]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[redis]]></category>
		<category><![CDATA[Survey]]></category>
		<category><![CDATA[Traefik]]></category>
		<guid isPermaLink="false">https://www.raffaelechiatto.com/?p=1124793</guid>

					<description><![CDATA[&#160; Formbricks è una piattaforma open source per la gestione dell&#8217;experience management, pensata per la raccolta di feedback e la creazione di sondaggi (survey) sia in-app che tramite link condivisibili. Nato come alternativa self-hosted a strumenti SaaS come Typeform o SurveyMonkey, Formbricks consente alle organizzazioni di mantenere il pieno controllo sui dati raccolti, senza vincoli [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="size-full wp-image-1091058 alignnone" src="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="679" height="89" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 14" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png 679w, https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR-480x63.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 679px, 100vw" /></p>
<p>&nbsp;</p>
<p>Formbricks è una piattaforma open source per la gestione dell&#8217;experience management, pensata per la raccolta di feedback e la creazione di sondaggi (survey) sia in-app che tramite link condivisibili.</p>
<p>Nato come alternativa self-hosted a strumenti SaaS come Typeform o SurveyMonkey, Formbricks consente alle organizzazioni di mantenere il pieno controllo sui dati raccolti, senza vincoli di licenza per numero di risposte e con piena conformità alle politiche di data privacy interne, un aspetto particolarmente rilevante per enti che gestiscono dati sensibili o operano in contesti normati (GDPR, policy aziendali di data residency).</p>
<p>L&#8217;architettura di Formbricks è containerizzata e si basa su un&#8217;infrastruttura Docker composta da diversi servizi: l&#8217;applicazione web principale (Next.js), un database PostgreSQL per la persistenza dei dati, Redis per la gestione di cache e code, un servizio di storage oggetti (RustFS) per gli allegati, e componenti aggiuntivi come Cube per l&#8217;analisi dei dati e Hub per funzionalità di integrazione.</p>
<p>L&#8217;accesso all&#8217;applicativo avviene tipicamente tramite un reverse proxy (Traefik), che gestisce il routing verso i singoli container e, dove necessario, la terminazione TLS.</p>
<p>Questo documento descrive la procedura di installazione e configurazione base di Formbricks su un server Ubuntu Server 26.04, in ambiente di test/laboratorio, coprendo il deployment tramite Docker Compose, la configurazione delle variabili d&#8217;ambiente principali (URL pubblico dell&#8217;applicazione, parametri di autenticazione), la creazione e gestione dell&#8217;utente amministratore, e le verifiche di funzionamento post-installazione.</p>
<p>&nbsp;</p>
<h3><strong>PREREQUISITI</strong></h3>
<p>Prima di iniziare assicurarsi di avere:</p>
<ul>
<li>Un server con Ubuntu Server 26.04, accesso SSH e utente con privilegi sudo.</li>
<li>Requisiti minimi hardware: 1 vCPU, 2 GB di RAM, 8 GB di spazio SSD (per un uso reale con più progetti/risposte, meglio partire da 2 vCPU / 4 GB RAM).</li>
<li>Un nome a dominio (es. feedback.tuodominio.it) con un record DNS di tipo A che punti all&#8217;IP pubblico del server.</li>
<li>Le porte 80 e 443 raggiungibili dall&#8217;esterno (aperte sul firewall del server e su eventuale firewall del provider/cloud).</li>
<li>Un indirizzo email valido, da usare per le notifiche del certificato SSL (Let&#8217;s Encrypt).</li>
</ul>
<p>&nbsp;</p>
<h3><strong>PREPARAZIONE DEL SERVER</strong></h3>
<p>Collegarsi via SSH al server e aggiornare il sistema con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt update &amp;&amp; sudo apt upgrade -y</pre><p>Se non hai già un utente non-root con sudo, creane uno (consigliato non lavorare come root):</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo adduser formbricks-admin

sudo usermod -aG sudo formbricks-admin

su - formbricks-admin</pre><p>&nbsp;</p>
<h3></h3>
<h3><strong>CONFIGURAZIONE DEL FIREWALL</strong></h3>
<p>Configurare il firewall con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y ufw

sudo ufw allow OpenSSH

sudo ufw allow 80/tcp

sudo ufw allow 443/tcp

sudo ufw enable

sudo ufw status</pre><p>&nbsp;</p>
<h3></h3>
<h3><strong>VERIFICA DEL DNS</strong></h3>
<p>Prima di procedere, controlla che il dominio scelto risolva correttamente verso l&#8217;IP del server:</p><pre class="urvanov-syntax-highlighter-plain-tag">dig +short feedback.tuodominio.it</pre><p>L&#8217;output deve corrispondere all&#8217;IP pubblico del tuo server Ubuntu. Se non è ancora propagato, attendi qualche minuto prima di continuare (il rilascio del certificato SSL fallisce se il DNS non è corretto).</p>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE DI FORMBRICKS (SCRIPT ONE-CLICK)</strong></h3>
<p>Lo script ufficiale gestisce da solo l&#8217;installazione di Docker e di tutti i componenti necessari, quindi non serve installare Docker manualmente prima.</p>
<p>Creare una cartella di lavoro e scaricare lo script con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">mkdir -p ~/formbricks-install &amp;&amp; cd ~/formbricks-install

curl -fsSL https://raw.githubusercontent.com/formbricks/formbricks/stable/docker/formbricks.sh \
-o formbricks.sh &amp;&amp; chmod +x formbricks.sh</pre><p>Avviare l&#8217;installazione con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">./formbricks.sh install</pre><p>Durante l&#8217;esecuzione lo script farà alcune domande interattive:</p>
<p><strong>Chiavi GPG di Docker</strong>: se richiesto, conferma il sovrascrivere eventuali chiavi Docker già presenti.</p>
<p><strong>Dominio</strong>: inserire il tuo dominio senza protocollo, cioè senza http:// o https:// (es. feedback.tuodominio.it).</p>
<p><strong>Certificato HTTPS</strong>: rispondi &#8220;sì&#8221; per attivare la generazione automatica del certificato con Let&#8217;s Encrypt.</p>
<p><strong>Verifica DNS</strong>: conferma che il dominio punti correttamente al server e che le porte 80/443 siano raggiungibili.</p>
<p><strong>Email per SSL</strong>: indirizzo email da associare al certificato (notifiche di scadenza/rinnovo).</p>
<p><strong>HSTS</strong>: puoi abilitarlo per forzare sempre HTTPS (consigliato per un ambiente di produzione stabile).</p>
<p><strong>Servizio email/SMTP</strong>: opzionale, puoi rispondere &#8220;no&#8221; e configurarlo in un secondo momento (vedi punto 6).</p>
<p>Al termine, lo script crea una cartella <strong>./formbricks/</strong> contenente:</p>
<p><strong>docker-compose.yml</strong>: la definizione dei container</p>
<p><strong>.env</strong>: variabili d&#8217;ambiente e credenziali (da tenere privato e da includere nei backup)</p>
<p><strong>traefik.yaml / traefik-dynamic.yaml</strong>: configurazione del reverse proxy</p>
<p><strong>acme.json</strong>: i certificati SSL emessi da Let&#8217;s Encrypt</p>
<p>&nbsp;</p>
<h3><strong>VERIFICA DELL&#8217;INSTALLAZIONE</strong></h3>
<p>Controllare che tutti i container siano attivi:</p><pre class="urvanov-syntax-highlighter-plain-tag">cd ~/formbricks-install/formbricks

docker ps</pre><p>Dovremmo vedere in esecuzione (tra gli altri) i container di <strong>Formbricks, PostgreSQL, Redis, Traefik e Cube</strong>.</p><pre class="urvanov-syntax-highlighter-plain-tag">CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
421e398d73b1 traefik:v3.6.4 "/entrypoint.sh trae…" About a minute ago Up About a minute 0.0.0.0:80-&gt;80/tcp, [::]:80-&gt;80/tcp, 0.0.0.0:443-&gt;443/tcp, [::]:443-&gt;443/tcp traefik
feafd58746f0 cubejs/cube:v1.6.6 "docker-entrypoint.s…" About a minute ago Up About a minute (healthy) 4000/tcp formbricks-cube-1
6bb06dd3e131 ghcr.io/formbricks/hub:latest "/app/hub-api" About a minute ago Up About a minute (healthy) 8080/tcp formbricks-hub-1
ac8b179d82ed ghcr.io/formbricks/formbricks:latest "docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:3000-&gt;3000/tcp, [::]:3000-&gt;3000/tcp formbricks-formbricks-1
498bdc4abc05 rustfs/rustfs:1.0.0-rc.2 "/entrypoint.sh /data" About a minute ago Up About a minute 9000-9001/tcp formbricks-rustfs-1
af4eff0dc365 pgvector/pgvector:pg18 "docker-entrypoint.s…" About a minute ago Up About a minute (healthy) 5432/tcp formbricks-postgres-1
63140f3ade9c e0eb7c480958 "docker-entrypoint.s…" About a minute ago Up About a minute (healthy) 6379/tcp formbricks-redis-1</pre><p>Aprire quindi nel browser:</p>
<p><strong>https://feedback.tuodominio.it</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-01.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124794 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-01-1024x399.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="399" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 15" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-01-980x382.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-01-480x187.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Se tutto è andato a buon fine, il certificato HTTPS sarà valido (lucchetto verde) e comparirà la schermata di primo avvio di Formbricks.</p>
<p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE INZIALE VIA BROWSER</strong></h3>
<p>Alla prima apertura del dominio, Formbricks ti guida nella configurazione base:</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-02.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124795 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-02-1024x402.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 16" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-02-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-02-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare su <strong>Continue with mail</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-03.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124796 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-03-1024x403.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 17" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-03-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-03-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Crea l&#8217;account amministratore: nome, email e password del primo utente (avrà ruolo di owner dell&#8217;organizzazione)</p>
<p>Spuntare l&#8217;opzione <strong>Security Updates</strong> quindi cliccare <strong>Continue with Email</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-04.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124797 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-04-1024x402.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 18" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-04-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-04-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare <strong>Log In</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-05.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124798 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-05-1024x403.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 19" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-05-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-05-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare <strong>Log in with Email</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-06.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124799 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-06-1024x401.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 20" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-06-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-06-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire le credenziali amministrative create in precedenza quindi cliccare <strong>Log In with Email</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-07.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124800 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-07-1024x401.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 21" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-07-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-07-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire il nome dell&#8217;organizzazione quindi cliccare <strong>Continue</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-08.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124801 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-08-1024x402.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 22" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-08-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-08-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Dato che l&#8217;SMTP non è configurato cliccare <strong>Skip</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-09.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124802 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-09-1024x404.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="404" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 23" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-09-980x387.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-09-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare <strong>Start From Scratch</strong> per creare il primo progetto. Formbricks propone anche modelli pronti (<strong>survey NPS, feedback prodotto, ecc</strong>.) da cui partire.</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-10.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124803 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-10-1024x404.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="404" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 24" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-10-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-10-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire tutte le info della Survey quindi cliccare <strong>Save and Close</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-11.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124805 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-11-1024x402.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 25" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-11-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-11-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>La survey è Live. Cliccare su <strong>Preview</strong> per vedere l&#8217;anteprima</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-12.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124806 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-12-1024x401.png" alt="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di Formbricks su Ubuntu Server 26.04 26" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-12-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-formbricks-ubuntu-12-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Se è tutto OK dovremmo visualizzare la Survey appena creata</p>
<p>Da questo momento l&#8217;app è pienamente operativa: puoi creare survey, invitare collaboratori e collegare i tuoi siti/app tramite l&#8217;SDK Formbricks.</p>
<p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE BASE AGGIUNTIVA (OPZIONALE MA CONSIGLIATA)</strong></h3>
<p>Le impostazioni aggiuntive si configurano modificando il file .env nella cartella <strong>~/formbricks-install/formbricks/</strong> e poi riavviando lo stack.</p>
<h4><strong>Invio email (SMTP)</strong></h4>
<p>Necessario per inviti team, notifiche e reset password. Aggiungi/modifica nel file .env:</p><pre class="urvanov-syntax-highlighter-plain-tag">MAIL_FROM=notifiche@tuodominio.it
MAIL_FROM_NAME="Formbricks - Tuo Nome Azienda"
SMTP_HOST=smtp.tuoprovider.it
SMTP_PORT=587
SMTP_USER=nome-utente-smtp
SMTP_PASSWORD=password-smtp
SMTP_SECURE_ENABLED=1</pre><p>&nbsp;</p>
<h4><strong>Login con Google o GitHub (opzionale)</strong></h4>
<p>Se vuoi permettere il login con account Google o GitHub, aggiungi le credenziali OAuth ottenute dalla rispettiva console sviluppatori:</p><pre class="urvanov-syntax-highlighter-plain-tag">GOOGLE_CLIENT_ID=...
GOOGLE_CLIENT_SECRET=...

GITHUB_ID=...
GITHUB_SECRET=...</pre><p>Applicare le modifiche</p>
<p>Dopo ogni modifica al file .env, riavviare lo stack perché le variabili vengano ricaricate:</p><pre class="urvanov-syntax-highlighter-plain-tag">cd ~/formbricks-install/formbricks

./formbricks.sh restart</pre><p><strong>NOTA BENE</strong>: non modificare mai a mano i secret generati automaticamente durante l&#8217;installazione (NEXTAUTH_SECRET, ENCRYPTION_KEY, CRON_SECRET, ecc.) sono legati ai dati già cifrati nel database.</p>
<p>&nbsp;</p>
<h3><strong>COMANDI DI GESTIONE UTILI</strong></h3>
<p>Tutti i comandi vanno eseguiti dentro <strong>~/formbricks-install/formbricks/</strong>:</p><pre class="urvanov-syntax-highlighter-plain-tag">./formbricks.sh logs # visualizza i log dei container
./formbricks.sh stop # ferma lo stack
./formbricks.sh restart # riavvia lo stack
./formbricks.sh update # aggiorna Formbricks all'ultima versione stabile
./formbricks.sh uninstall # disinstalla e rimuove tutti i dati (irreversibile)</pre><p>Lo script update non sovrascrive il tuo <strong>docker-compose.yml</strong> personalizzato, quindi eventuali modifiche manuali vengono preservate.</p>
<p>&nbsp;</p>
<h3><strong>BACKUP CONSIGLIATI</strong></h3>
<p>Per poter ripristinare l&#8217;installazione in caso di problemi, includi periodicamente nel tuo piano di backup:</p>
<p>Il file <strong>~/formbricks-install/formbricks/.env</strong> (contiene tutti i secret).</p>
<p>Un dump del database PostgreSQL:</p><pre class="urvanov-syntax-highlighter-plain-tag">cd ~/formbricks-install/formbricks

docker compose exec postgres pg_dump -U postgres formbricks &gt; backup-formbricks-$(date +%F).sql</pre><p>Se usi lo storage file locale (RustFS incluso), anche i relativi volumi Docker.</p>
<p>&nbsp;</p>
<h3><strong>PRO E CONTRO</strong></h3>
<p>&nbsp;</p>
<h4><strong>PRO</strong></h4>
<ul>
<li>Open source e self-hosted senza limiti artificiali: a differenza di alternative SaaS come Typeform o SurveyMonkey, la versione self-hosted di Formbricks non impone limiti sul numero di risposte raccolte, e il codice sorgente è liberamente ispezionabile e modificabile.</li>
<li>Controllo completo sui dati: essendo ospitato su infrastruttura propria, tutti i dati restano all&#8217;interno del perimetro dell&#8217;organizzazione, un vantaggio rilevante per requisiti di data residency, GDPR o policy interne di sicurezza.</li>
<li>Targeting comportamentale avanzato: consente di attivare micro-survey in-app basate su comportamento dell&#8217;utente, pagine visitate o eventi personalizzati, permettendo di raccogliere feedback nel momento più significativo.</li>
<li>Builder no-code: la creazione di sondaggi (NPS, CSAT, CES e altri template predefiniti) non richiede competenze tecniche, rendendo lo strumento accessibile anche a team non sviluppatori.</li>
<li>Flessibilità nei canali di distribuzione: supporta sondaggi in-app, pop-up su sito web e link condivisibili, coprendo diversi scenari di raccolta feedback.</li>
</ul>
<h4></h4>
<h4><strong>CONTRO</strong></h4>
<ul>
<li>Complessità dell&#8217;auto-hosting: come abbiamo sperimentato direttamente in questa installazione, il deployment richiede familiarità con Docker, Docker Compose, reverse proxy (Traefik) e gestione di variabili d&#8217;ambiente — non è un prodotto &#8220;plug and play&#8221; per team privi di competenze sistemistiche.</li>
<li>Manutenzione continuativa: essendo self-hosted, l&#8217;organizzazione si assume la responsabilità di aggiornamenti, backup del database, gestione dei certificati TLS e troubleshooting (come il problema di &#8220;Invalid origin&#8221; legato al mismatch tra protocollo configurato e protocollo di accesso).</li>
<li>Focus limitato a survey in-app e su sito: è meno adatto a form standalone complessi, quiz strutturati o flussi collegati a pagamenti, ambiti in cui strumenti come Typeform restano più maturi.</li>
<li>Libreria template ridotta: rispetto a competitor consolidati, offre meno template predefiniti e minori opzioni di personalizzazione grafica &#8220;out of the box&#8221;.</li>
<li>Integrazione per survey in-app: richiede l&#8217;integrazione di un SDK JavaScript nel prodotto/sito, il che comporta un carico di lavoro di sviluppo iniziale non banale.</li>
<li>Analytics essenziali: le dashboard di reporting integrate sono più basilari rispetto a strumenti concorrenti orientati all&#8217;analisi avanzata dei dati.</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-formbricks-su-ubuntu-server-26-04/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installazione e Configurazione Base di Excalidraw su Ubuntu Server 26.04 con Docker Engine</title>
		<link>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-excalidraw-su-ubuntu-server-26-04-con-docker-engine/</link>
					<comments>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-excalidraw-su-ubuntu-server-26-04-con-docker-engine/#respond</comments>
		
		<dc:creator><![CDATA[Raffaele Chiatto]]></dc:creator>
		<pubDate>Mon, 05 Oct 2026 07:13:41 +0000</pubDate>
				<category><![CDATA[Docker]]></category>
		<category><![CDATA[Excalidraw]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[apache]]></category>
		<guid isPermaLink="false">https://www.raffaelechiatto.com/?p=1124784</guid>

					<description><![CDATA[&#160; Excalidraw è una lavagna virtuale open source, distribuita con licenza MIT, pensata per creare in modo rapido diagrammi, schizzi e wireframe con un caratteristico stile &#8220;disegnato a mano&#8221;. A differenza degli strumenti di diagrammistica tradizionali, dove la precisione formale è spesso richiesta fin da subito, Excalidraw punta sull&#8217;informalità del tratto: questo lo rende particolarmente [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="size-full wp-image-1091058 alignnone" src="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png" alt="Installazione e Configurazione Base di Excalidraw su Ubuntu Server 26.04 con Docker Engine - Raffaele Chiatto" width="679" height="89" title="Installazione e Configurazione Base di Excalidraw su Ubuntu Server 26.04 con Docker Engine 29" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png 679w, https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR-480x63.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 679px, 100vw" /></p>
<p>&nbsp;</p>
<p>Excalidraw è una lavagna virtuale open source, distribuita con licenza MIT, pensata per creare in modo rapido diagrammi, schizzi e wireframe con un caratteristico stile &#8220;disegnato a mano&#8221;.</p>
<p>A differenza degli strumenti di diagrammistica tradizionali, dove la precisione formale è spesso richiesta fin da subito, Excalidraw punta sull&#8217;informalità del tratto: questo lo rende particolarmente adatto alle fasi di brainstorming, alla progettazione rapida di flussi e architetture di sistema, o semplicemente a spiegare un&#8217;idea con pochi tratti essenziali, senza la rigidità di strumenti come UML o BPMN.</p>
<p>Il progetto, scritto in TypeScript e React, è sviluppato attivamente ed è oggi uno dei punti di riferimento tra le alternative open source a strumenti come Miro o FigJam.</p>
<p>Uno degli aspetti che rende Excalidraw interessante per un&#8217;organizzazione è proprio la possibilità di self-hosting: l&#8217;applicazione può essere eseguita interamente sui propri server tramite container Docker, mantenendo così pieno controllo sui dati e sui diagrammi prodotti, senza dipendere da un servizio cloud di terze parti né dover condividere contenuti potenzialmente sensibili (schemi di rete, architetture applicative, processi interni) al di fuori della propria infrastruttura.</p>
<p>Va però precisato un dettaglio tecnico non sempre evidente: l&#8217;immagine Docker ufficiale distribuita dal progetto fornisce solo l&#8217;editor client, mentre le funzionalità di collaborazione in tempo reale (più utenti che disegnano contemporaneamente sulla stessa lavagna) richiedono componenti aggiuntivi, come il servizio excalidraw-room per il canale WebSocket e un backend di storage per il salvataggio delle scene condivise.</p>
<p>Nella pratica, un self-hosting completo si realizza tipicamente componendo più container tramite Docker Compose.</p>
<p>In questo articolo vedremo come installare e configurare Excalidraw in versione base su un sistema Ubuntu Server 26.04, utilizzando Docker Engine per l&#8217;esecuzione dei container: dalla preparazione dell&#8217;ambiente Docker fino all&#8217;avvio della lavagna, con l&#8217;obiettivo di ottenere un&#8217;istanza funzionante e pronta all&#8217;uso.</p>
<p>&nbsp;</p>
<h3><strong>PREREQUISITI</strong></h3>
<ul>
<li>Server con Ubuntu Server 26.04 LTS appena installato, accesso sudo o root via SSH.</li>
<li>Risorse minime: 1 vCPU, 1 GB di RAM, 5 GB di spazio disco (l&#8217;app è molto leggera, ~40 MB l&#8217;immagine).</li>
<li>Un dominio che punti all&#8217;IP del server (consigliato: Excalidraw usa WebSocket per la collaborazione live, che funziona meglio dietro HTTPS).</li>
<li>Firewall con le porte 22 (SSH), 80 (HTTP) e 443 (HTTPS) raggiungibili.</li>
</ul>
<p>&nbsp;</p>
<h3><strong>AGGIORNAMENTO DEL SISTEMA</strong></h3>
<p>Aggiornare il sikstema con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt update &amp;&amp; sudo apt upgrade -y

sudo apt install -y ca-certificates curl ufw

sudo ufw allow OpenSSH

sudo ufw enable</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>NOTA PRELIMINARE</strong></h3>
<p>Excalidraw non ha un metodo di installazione &#8220;tradizionale&#8221; (niente PHP/MySQL): il progetto distribuisce un&#8217;immagine Docker ufficiale ed è il modo supportato per self-hostarlo.</p>
<p>Questa guida usa Docker + Apache come reverse proxy HTTPS.</p>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE DI DOCKER ENGINE</strong></h3>
<p>Per l&#8217;installazione di Docker eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt remove -y docker.io docker-doc docker-compose podman-docker containerd runc 2&gt;/dev/null

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

sudo chmod a+r /etc/apt/keyrings/docker.asc</pre><p></p><pre class="urvanov-syntax-highlighter-plain-tag">sudo tee /etc/apt/sources.list.d/docker.sources &lt;&lt;EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release &amp;&amp; echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF</pre><p></p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
newgrp docker</pre><p><strong>NOTA BENE:</strong> se sudo apt update restituisce un errore sul repository Docker (può succedere nei primi mesi dopo l&#8217;uscita di una nuova versione LTS, se Docker non ha ancora pubblicato i pacchetti per il codename &#8220;resolute&#8221;), sostituisci temporaneamente il valore di Suites con noble nel file /etc/apt/sources.list.d/docker.sources: i pacchetti di Ubuntu 24.04 sono compatibili.</p>
<p>&nbsp;</p>
<h3><strong>AVVIO DEL CONTAINER EXCALIDRAW</strong></h3>
<p>Usare Docker Compose per gestire il servizio in modo ordinato:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo mkdir -p /opt/excalidraw

sudo nano /opt/excalidraw/docker-compose.yml</pre><p>Quindi copiare all&#8217;interno del file il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">services:
excalidraw:
image: excalidraw/excalidraw:latest
container_name: excalidraw
restart: unless-stopped
ports:
- "127.0.0.1:5000:80"</pre><p><strong>NOTA BENE</strong>: Il container ascolta solo su localhost: sarà Apache a esporlo pubblicamente in HTTPS</p><pre class="urvanov-syntax-highlighter-plain-tag">cd /opt/excalidraw

sudo docker compose up -d</pre><p>Dovremmo visualizzare un output simile al seguente:</p><pre class="urvanov-syntax-highlighter-plain-tag">[+] up 13/13
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image excalidraw/excalidraw:latest Pulled 4.1s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Network excalidraw_default Created 0.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container excalidraw Started</pre><p>&nbsp;</p>
<h3><strong>VERIFICA LOCALE</strong></h3>
<p>Fare una verifica con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo docker ps

curl -I http://127.0.0.1:5000</pre><p>Il primo comando deve mostrare il container excalidraw in stato <strong>Up</strong>:</p><pre class="urvanov-syntax-highlighter-plain-tag">2f8a6f688111 excalidraw/excalidraw:latest "/docker-entrypoint.…" 51 seconds ago Up 50 seconds (healthy) 127.0.0.1:5000-&gt;80/tcp excalidraw</pre><p>il secondo deve restituire <strong>HTTP/1.1 200 OK</strong>:</p><pre class="urvanov-syntax-highlighter-plain-tag">HTTP/1.1 200 OK
Server: nginx/1.27.5
Date: Thu, 27 Aug 2026 12:31:08 GMT
Content-Type: text/html
Content-Length: 6843
Last-Modified: Wed, 06 May 2026 21:19:55 GMT
Connection: keep-alive
ETag: "69fbb07b-1abb"
Accept-Ranges: bytes</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE DI APACHE COME REVERSE PROXY</strong></h3>
<p>Installare Apache come Reverse Proxy con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y apache2

sudo a2enmod proxy proxy_http proxy_wstunnel headers rewrite

sudo systemctl restart apache2

sudo ufw allow "Apache Full"</pre><p><strong>NOTA BENE</strong>: I moduli <strong>proxy_http</strong> e <strong>proxy_wstunnel</strong> sono necessari perché Excalidraw usa WebSocket per la modalità collaborativa.</p>
<p>&nbsp;</p>
<h3><strong>VIRTUAL HOST DI APACHE</strong></h3>
<p>Configurare il Virtual Host di Apache editando il file con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo nano /etc/apache2/sites-available/excalidraw.conf</pre><p>Copiare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">&lt;VirtualHost *:80&gt;
ServerName draw.tuodominio.org

ProxyPreserveHost On
ProxyPass / http://127.0.0.1:5000/
ProxyPassReverse / http://127.0.0.1:5000/

ErrorLog ${APACHE_LOG_DIR}/excalidraw_error.log
CustomLog ${APACHE_LOG_DIR}/excalidraw_access.log combined
&lt;/VirtualHost&gt;</pre><p><strong>ATTENZIONE</strong>: Sostituire <strong>draw.tuodominio.org</strong> con il tuo dominio</p>
<p>Attivare il sito con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo a2ensite excalidraw.conf

sudo a2dissite 000-default.conf

sudo systemctl reload apache2</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>HTTPS CON LET&#8217;S ENCRYPT</strong></h3>
<p>Attivare HTTPS con Let&#8217;s Encrypt con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y certbot python3-certbot-apache

sudo certbot --apache -d draw.tuodominio.org

sudo certbot renew --dry-run</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>ACCESSO VIA WEB GUI</strong></h3>
<p>A questo punto è possibile richiamare da un qualsiasi browser il link <strong>http://draw.tuodominio.org</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-excalidraw-ubuntu-01.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124789 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-excalidraw-ubuntu-01-1024x400.png" alt="Installazione e Configurazione Base di Excalidraw su Ubuntu Server 26.04 con Docker Engine - Raffaele Chiatto" width="1024" height="400" title="Installazione e Configurazione Base di Excalidraw su Ubuntu Server 26.04 con Docker Engine 30" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-excalidraw-ubuntu-01-980x383.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-excalidraw-ubuntu-01-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Se è andato tutto a buon fine dovremmo visualizzare la lavagna virtuale come mostrato nell&#8217;immagine sovrastante</p>
<p>&nbsp;</p>
<h3><strong>GESTIONE DEL CONTAINER</strong></h3>
<p>Alcuni comandi utili per la manutenzione ordinaria, da eseguire in /opt/excalidraw:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo docker compose logs -f # log in tempo reale

sudo docker compose pull # scarica un aggiornamento dell'immagine

sudo docker compose up -d # riavvia con la nuova immagine

sudo docker compose down # ferma il servizio</pre><p><strong>Grazie a restart:</strong> unless-stopped e a docker abilitato come servizio di sistema, il container riparte automaticamente anche dopo un riavvio del server.</p>
<p>&nbsp;</p>
<h3><strong>COLLABORAZIONE IN TEMPO REALE (OPZIONALE-AVANZATO)</strong></h3>
<p>Va detto con chiarezza: l&#8217;immagine ufficiale excalidraw/excalidraw è una build statica che, per la funzione &#8220;Live collaboration&#8221;, punta al server pubblico gratuito di Excalidraw (oss-collab.excalidraw.com). Questo continua a funzionare anche su un&#8217;istanza self-hosted, e i dati della sessione restano comunque cifrati end-to-end lato client.</p>
<p>Se invece vuoi che tutto il traffico di collaborazione resti sul tuo server, serve affiancare il servizio ufficiale excalidraw/excalidraw-room e ricompilare il frontend da sorgente con la variabile VITE_APP_WS_SERVER_URL impostata sul tuo dominio: nell&#8217;immagine pre-costruita questo indirizzo è &#8220;congelato&#8221; nel bundle JavaScript in fase di build, non è configurabile a runtime con una semplice variabile d&#8217;ambiente.</p>
<p>Per questo motivo esula da una configurazione &#8220;base&#8221;: richiede una build Node.js personalizzata del frontend.</p>
<p>Se vuoi comunque provare il solo servizio di relay (utile se in futuro ricompili il frontend), il pezzo di configurazione è:</p><pre class="urvanov-syntax-highlighter-plain-tag">excalidraw-room:
image: excalidraw/excalidraw-room:latest
container_name: excalidraw-room
restart: unless-stopped
ports:
- "127.0.0.1:5001:80"</pre><p>con un secondo Virtual Host Apache su un sottodominio dedicato (es. <strong>collab.tuodominio.org</strong>) che inoltra sia le richieste HTTP sia l&#8217;upgrade WebSocket verso 127.0.0.1:5001.</p>
<p>&nbsp;</p>
<h3><strong>SALVATAGGIO E BACKUP</strong></h3>
<p>L&#8217;immagine base non include un database né uno storage lato server: ogni disegno viene salvato automaticamente solo nel localStorage del browser di chi lo sta usando.</p>
<p>Non c&#8217;è quindi nulla da backuppare sul server in questa configurazione base vale però la pena avvisare gli utenti di esportare periodicamente i lavori importanti da File → Esporta (formato .excalidraw o immagine), perché cancellare i dati del browser equivale a perdere il disegno.</p>
<p>&nbsp;</p>
<h3><strong>PRO E CONTRO</strong></h3>
<h4></h4>
<h4><strong>PRO</strong></h4>
<ul>
<li>Gratuito, open source e senza registrazione: licenza MIT, nessun costo di licenza né account da creare per iniziare a disegnare.</li>
<li>Interfaccia essenziale e curva di apprendimento minima: canvas pulito, tante scorciatoie da tastiera, adatto a chi vuole buttare giù un&#8217;idea senza distrazioni.</li>
<li>Stile &#8220;disegnato a mano&#8221; efficace per l&#8217;informalità: perfetto per brainstorming, wireframe rapidi e schemi di architettura da usare in fase di discussione, senza la rigidità di strumenti UML/BPMN.</li>
<li>Leggero ed embeddabile: distribuito anche come pacchetto React (@excalidraw/excalidraw), è integrabile in altre applicazioni ed esiste come plugin/estensione in strumenti come Obsidian e VS Code.</li>
<li>Controllo completo dei dati con il self-hosting: eseguendolo su propri container Docker, i diagrammi (anche quelli che rappresentano schemi di rete o architetture interne) restano sulla propria infrastruttura invece che su un servizio cloud di terze parti.</li>
<li>Esportazione flessibile: i lavori possono essere esportati in PNG, SVG o nel formato nativo .excalidraw per backup o condivisione manuale.</li>
</ul>
<h4></h4>
<h4><strong>CONTRO</strong></h4>
<ul>
<li>Non adatto a diagrammi formali complessi: manca di funzionalità per notazioni rigorose come UML, ER o BPMN, ed è meno indicato per presentazioni che richiedono un aspetto grafico curato e &#8220;pulito&#8221;.</li>
<li>Persistenza limitata nella versione self-hosted di base: senza un backend di storage dedicato, i disegni vengono salvati solo localmente nel browser (localStorage/IndexedDB); svuotando i dati del browser si perde tutto ciò che non è stato esportato manualmente.</li>
<li>Collaborazione in tempo reale non inclusa &#8220;di serie&#8221;: l&#8217;immagine Docker ufficiale fornisce solo l&#8217;editor; abilitare la collaborazione multi-utente richiede componenti aggiuntivi (excalidraw-room, backend di storage) e una configurazione più articolata via Docker Compose.</li>
<li>Nessuna condivisione tramite link diretto: a differenza della versione pubblica excalidraw.com, l&#8217;istanza self-hosted non genera link di condivisione: la distribuzione dei lavori avviene esportando e inviando manualmente i file.</li>
<li>Dipendenza da accesso HTTPS in uscita per le librerie della community: in ambienti isolati o air-gapped questa funzionalità non è disponibile senza interventi manuali.</li>
<li>Versionamento dell&#8217;immagine Docker poco strutturato: sono disponibili solo i tag latest o basati sull&#8217;hash del commit, senza versioning semantico, il che rende più delicata la gestione degli aggiornamenti in un ambiente di produzione.</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-excalidraw-su-ubuntu-server-26-04-con-docker-engine/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04</title>
		<link>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-espocrm-su-ubuntu-server-26-04/</link>
					<comments>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-espocrm-su-ubuntu-server-26-04/#respond</comments>
		
		<dc:creator><![CDATA[Raffaele Chiatto]]></dc:creator>
		<pubDate>Wed, 30 Sep 2026 06:31:13 +0000</pubDate>
				<category><![CDATA[EspoCRM]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[CRM]]></category>
		<category><![CDATA[MariaDB]]></category>
		<category><![CDATA[Nginx]]></category>
		<guid isPermaLink="false">https://www.raffaelechiatto.com/?p=1124761</guid>

					<description><![CDATA[&#160; EspoCRM è un software di Customer Relationship Management (CRM) open source, distribuito sotto licenza GNU Affero General Public License v3 (AGPLv3), pensato per la gestione delle relazioni con clienti, fornitori e partner all&#8217;interno di un&#8217;organizzazione. A differenza delle soluzioni CRM proprietarie basate su abbonamento, EspoCRM viene installato ed eseguito interamente sui server dell&#8217;organizzazione che [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="size-full wp-image-1091058 alignnone" src="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="679" height="89" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 41" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png 679w, https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR-480x63.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 679px, 100vw" /></p>
<p>&nbsp;</p>
<p>EspoCRM è un software di Customer Relationship Management (CRM) open source, distribuito sotto licenza GNU Affero General Public License v3 (AGPLv3), pensato per la gestione delle relazioni con clienti, fornitori e partner all&#8217;interno di un&#8217;organizzazione.</p>
<p>A differenza delle soluzioni CRM proprietarie basate su abbonamento, EspoCRM viene installato ed eseguito interamente sui server dell&#8217;organizzazione che lo adotta: questo garantisce il pieno controllo sui dati, l&#8217;assenza di costi di licenza per utente e nessun vincolo verso un fornitore esterno (vendor lock-in), aspetti particolarmente rilevanti per realtà come le organizzazioni non profit, dove il controllo dei costi operativi e la sovranità sui propri dati sono priorità concrete.</p>
<p>Dal punto di vista funzionale, EspoCRM consente di gestire in un unico ambiente i contatti e le anagrafiche aziendali, le opportunità di vendita e la relativa pipeline commerciale, le richieste di assistenza e supporto ai clienti, le attività di marketing e la comunicazione, oltre a automatizzare flussi di lavoro ricorrenti tramite regole configurabili. Il sistema è altamente personalizzabile: è possibile creare entità, campi e relazioni su misura senza dover intervenire sul codice sorgente, adattando lo strumento ai processi specifici dell&#8217;organizzazione anziché il contrario. L&#8217;architettura applicativa si basa su un frontend single-page che dialoga con un backend tramite API REST aperta, il che rende EspoCRM facilmente integrabile con altri sistemi (siti web, strumenti di posta elettronica, applicazioni gestionali) e ne fa, più che un semplice CRM, una piattaforma su cui costruire applicazioni gestionali su misura.</p>
<p>Sul piano tecnico, EspoCRM è un&#8217;applicazione web scritta in PHP che richiede un server web (Apache o Nginx), un database relazionale (MySQL o MariaDB) e un insieme di estensioni PHP dedicate per funzionare correttamente.</p>
<p>Essendo self-hosted, l&#8217;intero ciclo di vita del software — installazione, configurazione, aggiornamenti, backup e messa in sicurezza — è responsabilità di chi lo gestisce.</p>
<p>Il presente documento descrive la procedura di installazione e configurazione di base di EspoCRM su un sistema Ubuntu Server 26.04, a partire dalla preparazione dell&#8217;ambiente (stack LAMP/LEMP e relative dipendenze) fino alla prima configurazione applicativa, con l&#8217;obiettivo di fornire un ambiente funzionante, sicuro e pronto per un utilizzo in produzione.</p>
<p>&nbsp;</p>
<h3><strong>PREREQUISITI</strong></h3>
<ul>
<li>Server con Ubuntu Server 26.04 LTS (&#8220;Resolute Raccoon&#8221;) appena installato, accesso sudo o root via SSH.</li>
<li>Risorse minime consigliate: 2 vCPU, 4 GB di RAM, 20 GB di spazio disco (EspoCRM funziona anche con 2 GB di RAM su installazioni piccole, ma 4 GB evitano rallentamenti).</li>
<li>Un nome di dominio che punti all&#8217;IP del server (facoltativo ma consigliato, necessario per il certificato HTTPS allo step 10).</li>
<li>Firewall con le porte 22 (SSH), 80 (HTTP) e 443 (HTTPS) raggiungibili.</li>
</ul>
<p>&nbsp;</p>
<h3><strong>AGGIORNAMENTO DEL SISTEMA</strong></h3>
<p>Si parte sempre allineando i pacchetti di sistema e installando gli strumenti di base che serviranno più avanti.</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt update &amp;&amp; sudo apt upgrade -y
sudo apt install -y software-properties-common curl wget unzip ufw</pre><p>Se il server è nuovo, conviene attivare subito il firewall di base:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo ufw allow OpenSSH
sudo ufw enable</pre><p>&nbsp;</p>
<h3><strong>INSTALLAZIONE DI APACHE</strong></h3>
<p>EspoCRM supporta Apache, Nginx e IIS: questa guida usa Apache perché è la scelta più semplice da configurare per un&#8217;installazione base con .htaccess.</p>
<p>Installare Apache con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y apache2
sudo systemctl enable --now apache2
sudo ufw allow "Apache Full"</pre><p>Verificare che il servizio sia attivo puntando il browser all&#8217;indirizzo IP del server: deve comparire la pagina predefinita di Apache.</p>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE DI PHP 8.5 E DELLE ESTENSIONI</strong></h3>
<p>Ubuntu 26.04 include PHP 8.5 nei repository ufficiali, che rientra nell&#8217;intervallo richiesto da EspoCRM (PHP 8.3–8.5): non serve aggiungere repository di terze parti.</p>
<p>Eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y php libapache2-mod-php php-cli \
php-mysql php-gd php-mbstring php-xml php-curl \
php-zip php-bcmath php-intl</pre><p>Parametri consigliati. Aprire <strong>/etc/php/8.5/apache2/php.ini</strong> e impostare i valori consigliati da EspoCRM (aumentano i limiti di memoria, tempo di esecuzione e dimensione degli upload):</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo sed -i \
-e 's/^max_execution_time = .*/max_execution_time = 180/' \
-e 's/^max_input_time = .*/max_input_time = 180/' \
-e 's/^memory_limit = .*/memory_limit = 256M/' \
-e 's/^post_max_size = .*/post_max_size = 50M/' \
-e 's/^upload_max_filesize = .*/upload_max_filesize = 50M/' \
-e 's/^;date.timezone =.*/date.timezone = Europe\/Rome/' \
/etc/php/8.5/apache2/php.ini</pre><p>Riavviare Apache con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo systemctl restart apache2</pre><p>Di seguito i paramentri che dovremmo avere:</p><pre class="urvanov-syntax-highlighter-plain-tag">max_execution_time: 180
max_input_time: 180
memory_limit: 256M
post_max_size: 50M
upload_max_filesize: 50M</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE E CONFIGURAZIONE DI MARIADB</strong></h3>
<p>In Ubuntu 26.04 MariaDB 11.8 è disponibile direttamente nell&#8217;archivio principale (in precedenza era in &#8220;universe&#8221;), ben oltre la versione minima 10.3 richiesta da EspoCRM.</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y mariadb-server

sudo systemctl enable --now mariadb

sudo mariadb-secure-installation</pre><p>Durante <strong>mariadb-secure-installation</strong> rispondere Y a tutte le domande (impostare una password per root, rimuovere utenti anonimi e il database di test).</p>
<p>Creare il database con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo mysql -u root -p</pre><p></p><pre class="urvanov-syntax-highlighter-plain-tag">CREATE DATABASE espocrm CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'espocrm_user'@'localhost' IDENTIFIED BY 'Password_Sicura!Lel';
GRANT ALL PRIVILEGES ON espocrm.* TO 'espocrm_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;</pre><p><strong>NOTA BENE:</strong> sostituire <strong>Password_Sicura!Lel</strong> con una password robusta e conservarla: servirà nel wizard di installazione.</p>
<p>&nbsp;</p>
<h3><strong>DOWNLOAD ED ESTRAZIONE DI ESPOCRM</strong></h3>
<p>Scaricare il pacchetto ufficiale (versione 10.0.6 al momento della stesura di questa guida verifica su <strong>espocrm.com/download</strong> se è uscita una versione più recente) ed estrailo nella document root.</p>
<p>Eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">cd /tmp

wget https://www.espocrm.com/downloads/EspoCRM-10.0.6.zip

sudo mkdir -p /var/www/espocrm

sudo unzip -q EspoCRM-10.0.6.zip -d /var/www/espocrm</pre><p>Controllare il contenuto della cartella: se l&#8217;archivio ha creato una sottocartella invece di estrarre i file direttamente, spostane il contenuto un livello sopra con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">ls /var/www/espocrm

# se compare una sola cartella tipo "EspoCRM-10.0.6", eseguire i comandi:

sudo mv /var/www/espocrm/EspoCRM-10.0.6/* /var/www/espocrm/

sudo rm -rf /var/www/espocrm/EspoCRM-10.0.6</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE DEI PERMESSI SUI FILES</strong></h3>
<p>EspoCRM richiede permessi specifici perché Apache possa scrivere cache, upload e log senza esporre l&#8217;intera installazione in scrittura.</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo chown -R www-data:www-data /var/www/espocrm
sudo find /var/www/espocrm -type d -exec chmod 755 {} \;
sudo find /var/www/espocrm -type f -exec chmod 644 {} \;
sudo chmod -R 775 /var/www/espocrm/data</pre><p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE DEL VIRTUALHOST IN APACHE</strong></h3>
<p>Il document root di EspoCRM deve puntare alla sottocartella public/, non alla radice del pacchetto: è lì che si trova il punto d&#8217;ingresso dell&#8217;applicazione.</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo a2enmod rewrite

sudo nano /etc/apache2/sites-available/espocrm.conf</pre><p>Contenuto del file <strong>/etc/apache2/sites-available/espocrm.conf</strong>:</p><pre class="urvanov-syntax-highlighter-plain-tag">&lt;VirtualHost *:80&gt;
ServerName crm.tuodominio.org
DocumentRoot /var/www/espocrm/public
Alias /client/ /var/www/espocrm/client/

&lt;Directory /var/www/espocrm/public/&gt;
AllowOverride All
Require all granted
&lt;/Directory&gt;

&lt;Directory /var/www/espocrm/&gt;
AllowOverride None
&lt;/Directory&gt;

ErrorLog ${APACHE_LOG_DIR}/espocrm_error.log
CustomLog ${APACHE_LOG_DIR}/espocrm_access.log combined
&lt;/VirtualHost&gt;</pre><p><strong>NOTA BENE</strong>: Sostituire crm.tuodominio.org con il tuo dominio (o rimuovere la riga ServerName per usare temporaneamente il solo IP).</p>
<p>Poi attivare il sito con is eguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo a2ensite espocrm.conf

sudo a2dissite 000-default.conf

sudo systemctl reload apache2</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE GUIDATA VIA BROWSER</strong></h3>
<p>Aprire da un qualsiasi browser <strong>http://crm.tuodominio.org</strong> (o l&#8217;IP del server).</p>
<p><strong>EspoCRM</strong> avvia automaticamente il wizard di installazione perché non trova ancora una configurazione.</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-01.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124766 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-01-1024x401.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 42" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-01-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-01-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Selezionare la lingua, il tema quindi cliccare <strong>Inizio</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-02.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124767 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-02-1024x400.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="400" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 43" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-02-980x383.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-02-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Accettare il contratto quindi cliccare <strong>Avanti</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-03.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124768 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-03-1024x401.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 44" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-03-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-03-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire tutte le info relative al database quindi cliccare su <strong>Test Connessione</strong>. Se è tutto OK cliccare <strong>Avanti</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-04.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124769 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-04-1024x798.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="798" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 45" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-04-980x764.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-04-480x374.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Verificare che sia tutto OK quindi cliccare <strong>Installa</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-05.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124770 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-05-1024x401.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 46" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-05-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-05-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Creare le credenziali amministrative quindi cliccare <strong>Avanti</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-06.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124772 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-06-1024x403.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 47" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-06-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-06-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Configurare tutte le <strong>Impostazioni di Sistema</strong> quindi cliccare <strong>Avanti</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-07.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124773 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-07-1024x401.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 48" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-07-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-07-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare su <strong>Vai a EspoCMR</strong> per proseguire</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-08.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124774 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-08-1024x403.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 49" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-08-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-08-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire le credenziali create in precedenza quindi cliccare <strong>Accedi</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-09.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124775 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-09-1024x403.png" alt="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di EspoCRM su Ubuntu Server 26.04 50" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-09-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-espocrm-ubuntu-09-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Se è andato tutto a buon fine dovremmo visualizzare la <strong>Dashboard di EspoCRM</strong></p>
<p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE DEL CRON JOB</strong></h3>
<p>I processi pianificati di EspoCRM (invio email in coda, notifiche, workflow, report automatici) girano tramite un job cron che va aggiunto manualmente.</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo crontab -u www-data -e</pre><p>Aggiungere questa riga (esecuzione ogni minuto):</p><pre class="urvanov-syntax-highlighter-plain-tag">* * * * * /usr/bin/php -f /var/www/espocrm/cron.php &gt; /dev/null 2&gt;&amp;1</pre><p>Il cron va eseguito come utente <strong>www-data</strong> (lo stesso proprietario dei file) per evitare problemi di permessi su cache e log.</p>
<p>&nbsp;</p>
<h3><strong>HTTPS CON LET&#8217;S ENCRYPT</strong></h3>
<p>Con un dominio già puntato al server, attivare HTTPS richiede un solo comando grazie a Certbot.</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt install -y certbot python3-certbot-apache

sudo certbot --apache -d crm.tuodominio.org</pre><p>Certbot modifica automaticamente il Virtual Host per servire in HTTPS e configura il rinnovo automatico del certificato. Verifica il rinnovo con:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo certbot renew --dry-run</pre><p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE BASE POST-INSTALLAZIONE</strong></h3>
<p>Accedere come amministratore e completare queste impostazioni essenziali prima di invitare gli utenti (menu Amministrazione in alto a destra):</p>
<p><strong>Impostazioni generali:</strong> nome dell&#8217;organizzazione, logo, fuso orario e formati di data/valuta, sotto Amministrazione → Impostazioni.</p>
<p><strong>Email in uscita (SMTP)</strong>: sotto Amministrazione → Email in uscita, necessaria per notifiche, reset password e invii da EspoCRM.</p>
<p><strong>Utenti e ruoli</strong>: creare gli account per il team sotto Amministrazione → Utenti e definire i ruoli di accesso prima di condividere l&#8217;URL.</p>
<p><strong>Backup</strong>: pianificare un backup regolare che copra sia i file (/var/www/espocrm, in particolare data/ e custom/) sia un dump del database (mysqldump espocrm).</p>
<p>&nbsp;</p>
<h3><strong>PRO E CONTRO</strong></h3>
<p>Come ogni soluzione software, anche EspoCRM presenta punti di forza e limiti di cui tenere conto in fase di valutazione e adozione.</p>
<h4><strong>PRO</strong></h4>
<ul>
<li>Nessun costo di licenza per utente e controllo dei dati: essendo open source e self-hosted, l&#8217;organizzazione non paga canoni per utente e mantiene i dati interamente sui propri server, un aspetto rilevante per realtà con budget limitati o vincoli sulla riservatezza dei dati.</li>
<li>Personalizzazione senza scrivere codice: tramite l&#8217;Entity Manager è possibile creare entità, campi, layout e relazioni su misura per i propri processi, senza dover modificare il codice sorgente dell&#8217;applicazione.</li>
<li>Interfaccia pulita e curva di apprendimento contenuta: per le funzioni di base (contatti, opportunità, attività) l&#8217;interfaccia è generalmente descritta come intuitiva e semplice da usare.</li>
<li>Automazione dei flussi di lavoro: regole, notifiche e processi (BPM) configurabili permettono di automatizzare attività ricorrenti senza sviluppo custom.</li>
<li>API REST aperta: facilita l&#8217;integrazione con siti web, strumenti di posta elettronica e altri sistemi gestionali dell&#8217;organizzazione.</li>
<li>Costo complessivo contenuto rispetto a CRM enterprise paragonabili, sia nella versione community gratuita sia nel piano cloud a pagamento.</li>
</ul>
<h4><strong>CONTRO</strong></h4>
<ul>
<li>Funzionalità di comunicazione native limitate: mancano automazioni integrate per canali come SMS o WhatsApp; per queste esigenze occorre affidarsi a strumenti terzi.</li>
<li>Integrazioni native ridotte: di serie sono previste solo poche integrazioni (es. Google/Outlook, Mailchimp, VoIP); per collegare altri servizi è spesso necessario ricorrere a strumenti come Zapier/Make oppure sviluppare integrazioni custom via API.</li>
<li>Le funzionalità avanzate richiedono competenze tecniche: automazioni complesse, integrazioni e personalizzazioni profonde presuppongono un amministratore con un minimo di preparazione tecnica.</li>
<li>Reportistica meno sofisticata: le capacità di analisi e reporting sono giudicate meno avanzate rispetto a CRM enterprise dedicati.</li>
<li>Prestazioni da monitorare con grandi volumi di dati: alcuni utenti segnalano rallentamenti in presenza di dataset molto grandi o workflow particolarmente complessi.</li>
<li>App mobile meno matura: le applicazioni mobile ufficiali sono ritenute meno complete e con qualche criticità rispetto alla versione web.</li>
<li>Responsabilità gestionale del self-hosting: essendo il software installato ed eseguito sui server dell&#8217;organizzazione, aggiornamenti, backup e sicurezza (patch, hardening del server, certificati) restano a carico di chi lo amministra, a differenza di una soluzione SaaS dove questi aspetti sono gestiti dal fornitore.</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-espocrm-su-ubuntu-server-26-04/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose</title>
		<link>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-limesurvey-su-ubuntu-server-26-04-con-docker-compose/</link>
					<comments>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-limesurvey-su-ubuntu-server-26-04-con-docker-compose/#respond</comments>
		
		<dc:creator><![CDATA[Raffaele Chiatto]]></dc:creator>
		<pubDate>Mon, 28 Sep 2026 06:56:25 +0000</pubDate>
				<category><![CDATA[Docker]]></category>
		<category><![CDATA[LimeSurvey]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Sondaggio]]></category>
		<category><![CDATA[Survey]]></category>
		<guid isPermaLink="false">https://www.raffaelechiatto.com/?p=1124731</guid>

					<description><![CDATA[&#160; LimeSurvey è una piattaforma open source per la creazione e gestione di sondaggi online, nata nel 2003 e oggi una delle alternative gratuite più diffuse a servizi commerciali come SurveyMonkey, Typeform o Google Forms. È utilizzata da aziende, università, enti pubblici e organizzazioni non profit per raccogliere dati tramite questionari anche molto complessi, restando [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="size-full wp-image-1091058 alignnone" src="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png" alt="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="679" height="89" title="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose 56" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png 679w, https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR-480x63.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 679px, 100vw" /></p>
<p>&nbsp;</p>
<p>LimeSurvey è una piattaforma open source per la creazione e gestione di sondaggi online, nata nel 2003 e oggi una delle alternative gratuite più diffuse a servizi commerciali come SurveyMonkey, Typeform o Google Forms.</p>
<p>È utilizzata da aziende, università, enti pubblici e organizzazioni non profit per raccogliere dati tramite questionari anche molto complessi, restando al 100% sotto il controllo di chi la installa: nessun dato di sondaggio transita verso server di terzi, il che la rende una scelta naturale quando la titolarità dei dati raccolti (specialmente dati personali dei rispondenti) deve rimanere interna.</p>
<p>La Community Edition (CE), quella che installeremo, è distribuita sotto licenza GPL v2 ed è completamente gratuita e autonoma: comprende sondaggi e domande illimitate, oltre 30 tipologie di domanda, più di 900 template grafici, supporto multilingua (80+ lingue), logica condizionale avanzata, autenticazione a due fattori, integrazioni LDAP/SAML e API REST, oltre a funzionalità di accessibilità (WCAG 2.0) e strumenti per la conformità GDPR.</p>
<p>Le funzionalità aggiuntive di supporto, hosting gestito e servizi enterprise restano nell&#8217;offerta commerciale a pagamento di LimeSurvey GmbH, ma non sono necessarie per un&#8217;installazione self-hosted funzionale al 100%.</p>
<p>&nbsp;</p>
<h3><strong>NOTE IMPORTANTI</strong></h3>
<p>Un paio di note prima di partire, verificate di recente:</p>
<ul>
<li>Con MySQL 9.x l&#8217;autenticazione di LimeSurvey si rompe perché è stato rimosso mysql_native_password → meglio pinnare MySQL 8.4.</li>
<li>La cartella <strong>/var/www/html/upload</strong> contiene anche temi e plugin, non solo i file dei sondaggi: va montata per intero, altrimenti un rebuild del container li cancella.</li>
</ul>
<p>&nbsp;</p>
<h3><strong>PREREQUISITI</strong></h3>
<p>Docker e Docker Compose già installati sul tuo Ubuntu Server 26.04.</p>
<p>&nbsp;</p>
<h3><strong>NSTALLAZIONE DI DOCKER E DOCKER COMPOSE</strong></h3>
<p>Se il server non ha già Docker installato eseguire i comandi elencati di seguito:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt update

sudo apt install -y ca-certificates curl gnupg

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release &amp;&amp; echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null

sudo apt update

sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin</pre><p>Verificare l&#8217;installazione di docker con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker --version</pre><p>Dovremmo visualizzare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">Docker version 29.7.2, build a7dcaa6</pre><p>Eseguire quindi il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose version</pre><p>Dovremmo visualizzare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">Docker Compose version v5.5.0</pre><p><strong>(Facoltativo)</strong> Per usare docker senza sudo eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo usermod -aG docker $USER
newgrp docker</pre><p>&nbsp;</p>
<h3><strong>STRUTTURA DELLE CARTELLE</strong></h3>
<p>Eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">mkdir -p ~/limesurvey/{upload,db-data}
cd ~/limesurvey</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>CREAZIONE FILE .ENV</strong></h3>
<p>Eseguire il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">cat &gt; .env &lt;&lt; 'EOF'
# Database
MYSQL_ROOT_PASSWORD=CambiaQuestaPassword!
MYSQL_DATABASE=limesurvey
MYSQL_USER=limesurvey
MYSQL_PASSWORD=CambiaAncheQuestaPassword!

# LimeSurvey Admin
LS_ADMIN_USER=admin
LS_ADMIN_NAME=Amministratore
LS_ADMIN_EMAIL=admin@tuodominio.it
LS_ADMIN_PASSWORD=CambiaQuestaPasswordAdmin!

# URL pubblico (adatta al tuo dominio/reverse proxy)
LS_PUBLIC_URL=https://survey.mypsx.net
EOF</pre><p>Quindi eseguire il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">chmod 600 .env</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>CREAZIONE DEL FILE DOCKER-COMPOSE.YML</strong></h3>
<p>Creare il file docker-compose.yml con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo nano docker-compose.yml</pre><p>Quindi incollare all&#8217;interno il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">services:
mysql:
image: mysql:8.4
container_name: limesurvey-mysql
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
volumes:
- ./db-data:/var/lib/mysql
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p${MYSQL_ROOT_PASSWORD}"]
interval: 10s
timeout: 5s
retries: 10

limesurvey:
image: martialblog/limesurvey:7-apache
container_name: limesurvey-app
restart: unless-stopped
depends_on:
mysql:
condition: service_healthy
environment:
DB_TYPE: mysql
DB_HOST: mysql
DB_PORT: 3306
DB_NAME: ${MYSQL_DATABASE}
DB_USERNAME: ${MYSQL_USER}
DB_PASSWORD: ${MYSQL_PASSWORD}
ADMIN_USER: ${LS_ADMIN_USER}
ADMIN_NAME: ${LS_ADMIN_NAME}
ADMIN_EMAIL: ${LS_ADMIN_EMAIL}
ADMIN_PASSWORD: ${LS_ADMIN_PASSWORD}
PUBLIC_URL: ${LS_PUBLIC_URL}
ports:
- "8080:8080"
volumes:
- ./upload:/var/www/html/upload</pre><p>&nbsp;</p>
<h3><strong>AVVIO DEL CONTAINER</strong></h3>
<p>Avviare il container con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose up -d</pre><p>Dovremmo visualizzare un output simile al seguente:</p><pre class="urvanov-syntax-highlighter-plain-tag">[+] up 40/40
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image martialblog/limesurvey:7-apache Pulled
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image mysql:8.4 Pulled
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Network limesurvey_default Created
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container limesurvey-mysql Healthy
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container limesurvey-app Started</pre><p>Quindi analizzare i log con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose logs -f limesurvey</pre><p>Dovremmo visualizzare un output simile al seguente:</p><pre class="urvanov-syntax-highlighter-plain-tag">limesurvey-app | Info: Customizing Apache Listen port to 8080
limesurvey-app | Connection to mysql (172.18.0.2) 3306 port [tcp/*] succeeded!
limesurvey-app | Info: Generating config.php
limesurvey-app | Info: Using MySQL configuration
limesurvey-app | Info: Using TCP connection
limesurvey-app | Info: Creating security.php
limesurvey-app | Warning: No encryption keys were provided
limesurvey-app | Warning: A security.php config will be created by the application
limesurvey-app | Info: Check if database already provisioned. Nevermind the Stack trace.
limesurvey-app | Warning: THIS FILE NEEDS TO BE PERSISTENT</pre><p>&nbsp;</p>
<h3><strong>PRIMO AVVIO TRAMITE WEB GUI</strong></h3>
<p>Al primo avvio l&#8217;entrypoint crea <strong>config.php</strong> ed esegue l&#8217;installazione via CLI usando le variabili ADMIN_*.</p>
<p>Attendere che i log mostrino il completamento poi richiamare i seguenti link:</p>
<p><strong>Frontend: http://&lt;ip-server&gt;:8080/</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-01.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124732 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-01-1024x403.png" alt="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose 57" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-01-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-01-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Questo è il <strong>Front End</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-02.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124733 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-02-1024x400.png" alt="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="400" title="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose 58" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-02-980x383.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-02-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p><strong>Backend: http://&lt;ip-server&gt;:8080/index.php/admin</strong></p>
<p>Questo è il <strong>Back End</strong></p>
<p>Inserire le credenziali censite nel file .env quindi cliccare Log In</p>
<p><strong>NOTA BENE</strong>: cambiare le variabili ADMIN_* dopo l&#8217;installazione iniziale non ha alcun effetto. Le credenziali si modificano solo dal pannello di amministrazione.</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-03.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124734 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-03-1024x403.png" alt="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose 59" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-03-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-03-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare su <strong>Chiudere</strong> per andare direttamante alla Dashboard oppure <strong>Creare una Nuova Indagine</strong> se si intende procedere subito con la creazione di una survey</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-04.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124735 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-04-1024x402.png" alt="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di LimeSurvey su Ubuntu Server 26.04 con Docker Compose 60" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-04-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-limesurvey-ubuntu-04-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Sopra un immagine che mostra la <strong>Dashboard di Backend di LimeSurvey</strong></p>
<h3></h3>
<h3><strong>CONFIGURAZIONE REVERSE PROXY (NGINX PROXY MANAGER)</strong></h3>
<p>In Ngnix Proxy Manager creare un Proxy Host puntato a limesurvey-app:8080 (se sono sulla stessa rete Docker) o all&#8217;IP:8080 del server, con SSL Let&#8217;s Encrypt.</p>
<p>Se noti redirect che portano con sé la porta interna nell&#8217;URL aggiungere in Advanced:</p><pre class="urvanov-syntax-highlighter-plain-tag">proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>BACKUP DI LIMESURVEY</strong></h3>
<p>Di seguito i comandi per effettuare il backup di Limesurvey</p><pre class="urvanov-syntax-highlighter-plain-tag"># Database
docker exec limesurvey-mysql sh -c 'exec mysqldump -u root -p"$MYSQL_ROOT_PASSWORD" limesurvey' &gt; backup_$(date +%F).sql</pre><p>&nbsp;</p><pre class="urvanov-syntax-highlighter-plain-tag"># File (temi, plugin, upload sondaggi)
tar czf upload_backup_$(date +%F).tar.gz ./upload</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>PRO E CONTRO</strong></h3>
<h4><strong>PRO</strong></h4>
<ul>
<li>Open source, GDPR-friendly per chi deve gestire dati sensibili in EU</li>
<li>Immagine Docker martialblog/limesurvey mantenuta attivamente, con supporto sia Apache che FPM</li>
<li>Motore di survey molto maturo: logica condizionale avanzata, quote, token per inviti, export in decine di formati</li>
<li>Nessun limite sul numero di sondaggi, domande o risposte raccolte</li>
<li>Enorme flessibilità nei tipi di domanda e nella logica dei questionari (skip logic, quote, randomizzazione)</li>
<li>Dati dei sondaggi interamente sotto il proprio controllo, nessuna trasmissione a terzi</li>
<li>Community ampia e attiva, centinaia di template e plugin disponibili</li>
<li>Multilingua nativo, utile per sondaggi rivolti a pubblici internazionali</li>
</ul>
<h4></h4>
<h4><strong>CONTRO</strong></h4>
<ul>
<li>Configurazione iniziale non banale dietro reverse proxy con sub-path (bug noto sul routing dell&#8217;area admin)</li>
<li>L&#8217;immagine Docker non è &#8220;ufficiale&#8221; LimeSurvey ma community-maintained</li>
<li>L&#8217;engine MyISAM di default per le tabelle dei sondaggi è datato; per uso serio conviene passare a InnoDB via DB_MYSQL_ENGINE=InnoDB</li>
<li>Nessuna immagine Docker ufficiale: bisogna scegliere e fidarsi di un&#8217;immagine mantenuta dalla community</li>
<li>Stack PHP + database relazionale più &#8220;pesante&#8221; da configurare correttamente (permessi file, cron per task pianificati, configurazione email) rispetto a soluzioni moderne a container singolo</li>
<li>Interfaccia amministrativa meno immediata rispetto a strumenti commerciali blasonati; richiede un minimo di curva di apprendimento</li>
<li>Gli aggiornamenti tra versioni maggiori possono richiedere passaggi manuali (backup e migrazione del database) più delicati</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-limesurvey-su-ubuntu-server-26-04-con-docker-compose/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose</title>
		<link>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-plausible-analytics-community-edition-su-ubuntu-server-26-04-con-docker-compose/</link>
					<comments>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-plausible-analytics-community-edition-su-ubuntu-server-26-04-con-docker-compose/#respond</comments>
		
		<dc:creator><![CDATA[Raffaele Chiatto]]></dc:creator>
		<pubDate>Thu, 24 Sep 2026 07:03:32 +0000</pubDate>
				<category><![CDATA[Docker]]></category>
		<category><![CDATA[Plausible Analytics]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[ClickHouse]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Web Analytics]]></category>
		<guid isPermaLink="false">https://www.raffaelechiatto.com/?p=1124710</guid>

					<description><![CDATA[&#160; Plausible Analytics è una piattaforma di web analytics open source, leggera e privacy-friendly: non usa cookie, non traccia dati personali degli utenti e nasce già conforme al GDPR, senza bisogno di banner di consenso. È una delle alternative più mature a Google Analytics per chi vuole tenere i dati dei propri siti interamente in [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="size-full wp-image-1091058 alignnone" src="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="679" height="89" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 68" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png 679w, https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR-480x63.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 679px, 100vw" /></p>
<p>&nbsp;</p>
<p>Plausible Analytics è una piattaforma di web analytics open source, leggera e privacy-friendly: non usa cookie, non traccia dati personali degli utenti e nasce già conforme al GDPR, senza bisogno di banner di consenso.</p>
<p>È una delle alternative più mature a Google Analytics per chi vuole tenere i dati dei propri siti interamente in casa.</p>
<p>Dalla versione 3.x, il progetto ha semplificato molto il self-hosting: la Community Edition (CE) ufficiale si installa tramite il repository plausible/community-edition, con un unico file compose.yml già pronto e gestione automatica del certificato TLS via Let&#8217;s Encrypt integrata nel container stesso (senza bisogno di un reverse proxy dedicato, a meno che non lo si preferisca).</p>
<p>&nbsp;</p>
<h3><strong>PREREQUISITI</strong></h3>
<ul>
<li>Una VM o server con Ubuntu Server 26.04, accesso SSH con privilegi sudo/root</li>
<li>Un dominio che punti all&#8217;IP del server (es. plausible.tuodominio.it), necessario per l&#8217;emissione automatica del certificato TLS</li>
<li>Docker Engine ≥ 20.10.0 e Docker Compose ≥ 2.0.0</li>
<li>Almeno 2 GB di RAM liberi (ClickHouse ne ha bisogno per funzionare senza OOM)</li>
<li>Porte 80 e 443 libere e raggiungibili dall&#8217;esterno (per HTTP-01 challenge Let&#8217;s Encrypt</li>
</ul>
<p>&nbsp;</p>
<h3><strong>INSTALLAZIONE DI DOCKER E DOCKER COMPOSE</strong></h3>
<p>Se il server non ha già Docker installato eseguire i comandi elencati di seguito:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo apt update

sudo apt install -y ca-certificates curl gnupg

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release &amp;&amp; echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null

sudo apt update

sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin</pre><p>Verificare l&#8217;installazione di docker con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker --version</pre><p>Dovremmo visualizzare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">Docker version 29.7.2, build a7dcaa6</pre><p>Eseguire il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose version</pre><p>Dovremmo visualizzare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">Docker Compose version v5.5.0</pre><p><strong>(Facoltativo)</strong> Per usare docker senza sudo eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo usermod -aG docker $USER
newgrp docker</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>CLONAZIONE DEL REPOSITORY UFFICIALE</strong></h3>
<p>Clonare il repository ufficiale con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">git clone -b v3.2.1 --single-branch https://github.com/plausible/community-edition plausible-ce
cd plausible-ce
ls -1</pre><p>Dovremmo visualizzare un output simile al seguente:</p><pre class="urvanov-syntax-highlighter-plain-tag">Cloning into 'plausible-ce'...
remote: Enumerating objects: 112, done.
remote: Counting objects: 100% (83/83), done.
remote: Compressing objects: 100% (49/49), done.
remote: Total 112 (delta 58), reused 34 (delta 34), pack-reused 29 (from 2)
Receiving objects: 100% (112/112), 22.15 KiB | 3.69 MiB/s, done.
Resolving deltas: 100% (63/63), done.
LICENSE
README.md
clickhouse
compose.yml</pre><p><strong>NOTA BENE</strong>: Controllare su GitHub se è disponibile un tag più recente di v3.2.1 al momento dell&#8217;installazione.</p>
<p>&nbsp;</p>
<h3><strong>CONFIGURAZIONE DEL FILE .ENV</strong></h3>
<p>Creare il file <strong>.env</strong> con dominio e chiave segreta con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">touch .env
echo "BASE_URL=https://plausible.tuodominio.it" &gt;&gt; .env
echo "SECRET_KEY_BASE=$(openssl rand -base64 48)" &gt;&gt; .env</pre><p>Verificare il contenuto con il seguente comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">cat .env</pre><p>Dovremmo visualizzare il seguente output:</p>
<p><strong>BASE_URL</strong>: deve corrispondere al dominio che punta al tuo server (il DNS deve essere già propagato, serve per l&#8217;emissione automatica del certificato Let&#8217;s Encrypt).</p>
<p><strong>SECRET_KEY_BASE</strong>: deve essere una stringa di almeno 64 byte (il comando openssl rand -base64 48 genera un valore adeguato). Conservala al sicuro, non versionarla su Git.</p>
<p><strong>Test in locale</strong>: per provare Plausible senza un dominio pubblico puoi usare BASE_URL=http://localhost:8000.</p>
<p>&nbsp;</p>
<h3><strong>ESPOSIZIONE DEL SERVIZIO WEB</strong></h3>
<p>Esistono due opzioni: TLS automatico integrato oppure dietro un reverse proxy che già gestisci (es. Nginx Proxy Manager).</p>
<h4><strong>OPZIONE A – TLS automatico (Let&#8217;s Encrypt integrato, nessun reverse proxy esterno)</strong></h4>
<p></p><pre class="urvanov-syntax-highlighter-plain-tag">echo "HTTP_PORT=80" &gt;&gt; .env
echo "HTTPS_PORT=443" &gt;&gt; .env

cat &gt; compose.override.yml &lt;&lt; 'EOF'
services:
plausible:
ports:
- 80:80
- 443:443
EOF</pre><p>In questo modo il container stesso emette e rinnova il certificato TLS per il dominio in BASE_URL, senza bisogno di configurare nulla lato Nginx/Caddy.</p>
<h4><strong>OPZIONE B – Dietro un reverse proxy esistente (es. Nginx Proxy Manager)</strong></h4>
<p>Se preferisci mantenere la gestione dei certificati su Nginx Proxy Manager esporre Plausible solo su localhost su una porta interna e disabilitare il TLS automatico con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">echo "HTTP_PORT=8000" &gt;&gt; .env

cat &gt; compose.override.yml &lt;&lt; 'EOF'
services:
plausible:
ports:
- "127.0.0.1:8000:80"
EOF</pre><p>Poi in NPM creare un nuovo Proxy Host con le seguenti info:</p>
<p><strong>Domain</strong>: plausible.tuodominio.it</p>
<p><strong>Forward Hostname/IP</strong>: IP del server Docker (o host.docker.internal se NPM è sullo stesso host in un&#8217;altra rete Docker)</p>
<p><strong>Forward Port</strong>: 8000</p>
<p><strong>Abilita SSL</strong>: con richiesta certificato Let&#8217;s Encrypt e &#8220;Force SSL&#8221; dal tab SSL di NPM</p>
<p>&nbsp;</p>
<h3><strong>AVVIO DEL CONTAINER</strong></h3>
<p>Avviare il container con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose up -d</pre><p>Dovremmo visualizzare un output simile al seguente:</p><pre class="urvanov-syntax-highlighter-plain-tag">[+] up 43/43
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image postgres:16-alpine Pulled 16.1s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image clickhouse/clickhouse-server:24.12-alpine Pulled 16.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image ghcr.io/plausible/community-edition:v3.2.1 Pulled 26.6s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Network plausible-ce_default Created 0.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Volume plausible-ce_db-data Created 0.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Volume plausible-ce_event-data Created 0.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Volume plausible-ce_event-logs Created 0.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Volume plausible-ce_plausible-data Created 0.0s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container plausible-ce-plausible_events_db-1 Healthy 12.5s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container plausible-ce-plausible_db-1 Healthy 12.5s
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container plausible-ce-plausible-1 Started</pre><p>Controllare lo stato e i log con i seguenti comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose ps

docker compose logs -f plausible</pre><p><strong>ATTENZIONE</strong>: Attendere che PostgreSQL e ClickHouse superino i rispettivi health check prima che Plausible completi il setup del database: la prima partenza può richiedere qualche decina di secondi.</p>
<p>&nbsp;</p>
<h3><strong>PRIMO ACCESSO VIA WEB GUI</strong></h3>
<p>Aprire il browser su <strong>$BASE_URL (es. https://plausible.tuodominio.it).</strong></p>
<p>Al primo avvio la Community Edition mostra direttamente la pagina di registrazione: crea qui il primo utente amministratore (le registrazioni successive richiedono un invito).</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-01.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124715 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-01-1024x403.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="403" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 69" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-01-980x386.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-01-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire tutte le info relative al primo amministratore quindi cliccare <strong>Create my account</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-02.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124716 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-02-1024x402.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 70" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-02-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-02-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire le info relative al dominio quindi cliccare <strong>Install Palusible</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-03.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124717 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-03-1024x400.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="400" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 71" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-03-980x383.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-03-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Selezionare lo script da inserire sul sito da analizzare quindi cliccare <strong>Verify Script Installation</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-04.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124718 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-04-1024x400.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="400" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 72" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-04-980x383.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-04-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Attendere qualche minuto&#8230;</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-05.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124719 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-05-1024x401.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 73" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-05-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-05-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Al termine del check dovremmo visualizzare la dashboard con i siti sotto analisi</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-06.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124720 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-06-1024x576.png" alt="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="576" title="Installazione e Configurazione Base di Plausible Analytics (Community Edition) su Ubuntu Server 26.04 con Docker Compose 74" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-06-980x551.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-plausible-ubuntu-06-480x270.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Dopo un po dovremmo iniziare a vedere tutte le statistiche dei siti come mostrato nell&#8217;immagine sovrastante</p>
<p>&nbsp;</p>
<h3><strong>AGGIORNAMENTO NUOVA VERSIONE</strong></h3>
<p>Per aggiornare Plausible alla nuova versione eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">cd plausible-ce

git fetch --tags

git checkout v3.x.x # nuovo tag disponibile

docker compose pull

docker compose up -d</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>BACKUP DI PLAUSIBLE</strong></h3>
<p>Per il backup i dati persistenti (PostgreSQL account/config e ClickHouse eventi) risiedono nei volumi Docker: identificali con docker volume ls e includili nella tua routine di backup abituale (es. snapshot del volume o pg_dump/clickhouse-backup pianificati).</p>
<p>&nbsp;</p>
<h3><strong>PRO E CONTRO</strong></h3>
<h4><strong>PRO</strong></h4>
<ul>
<li>Nessun cookie, nessun dato personale raccolto: conforme GDPR by design</li>
<li>Dashboard semplice, leggera, tutto su un&#8217;unica pagina</li>
<li>Script di tracciamento minuscolo (pochi KB), impatto quasi nullo sulle performance</li>
<li>Setup Docker Compose ufficiale e ben mantenuto, con TLS automatico incluso</li>
</ul>
<h4><strong>CONTRO</strong></h4>
<ul>
<li>ClickHouse richiede CPU con set di istruzioni SSE 4.2 (o NEON su ARM): quasi tutte le CPU moderne lo supportano, ma va verificato su hardware datato o alcune VM</li>
<li>Consiglia almeno 2 GB di RAM dedicati solo per ClickHouse + Plausible</li>
<li>Le funzionalità avanzate (multi-utente su larga scala, funnel avanzati, ecc.) restano nelle versioni Cloud/Enterprise</li>
</ul>
<h3></h3>
<h3><strong>CONCLUSIONI</strong></h3>
<p>Con la Community Edition attuale, il self-hosting di Plausible si riduce a clonare un repository, impostare due variabili in .env e lanciare docker compose up -d: il TLS automatico integrato elimina quasi del tutto la configurazione manuale di un reverse proxy, a meno che non si voglia integrarlo nell&#8217;infrastruttura esistente (come Nginx Proxy Manager). Il risultato è un&#8217;analytics leggera, privacy-first e completamente sotto il proprio controllo.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-plausible-analytics-community-edition-su-ubuntu-server-26-04-con-docker-compose/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose</title>
		<link>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-cloudbeaver-community-su-ubuntu-server-26-04-con-docker-compose/</link>
					<comments>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-cloudbeaver-community-su-ubuntu-server-26-04-con-docker-compose/#respond</comments>
		
		<dc:creator><![CDATA[Raffaele Chiatto]]></dc:creator>
		<pubDate>Tue, 22 Sep 2026 06:24:23 +0000</pubDate>
				<category><![CDATA[CloudBeaver]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[db]]></category>
		<guid isPermaLink="false">https://www.raffaelechiatto.com/?p=1124689</guid>

					<description><![CDATA[&#160; CloudBeaver Community è la versione open source e gratuita della piattaforma di gestione database sviluppata da DBeaver Corp, pensata per offrire un accesso ai dati completamente basato su browser, senza bisogno di installare alcun client desktop sulle postazioni degli utenti. A differenza del classico DBeaver, che è un&#8217;applicazione desktop, CloudBeaver gira come servizio web: [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="size-full wp-image-1091058 alignnone" src="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="679" height="89" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 83" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR.png 679w, https://www.raffaelechiatto.com/wp-content/uploads/2020/12/ADVANCED-BAR-480x63.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 679px, 100vw" /></p>
<p>&nbsp;</p>
<p>CloudBeaver Community è la versione open source e gratuita della piattaforma di gestione database sviluppata da DBeaver Corp, pensata per offrire un accesso ai dati completamente basato su browser, senza bisogno di installare alcun client desktop sulle postazioni degli utenti.</p>
<p>A differenza del classico DBeaver, che è un&#8217;applicazione desktop, CloudBeaver gira come servizio web: si installa una sola volta su un server centrale e da quel momento chiunque in azienda può connettersi, navigare tra schemi e tabelle, eseguire query SQL e consultare i risultati semplicemente aprendo un browser, da qualsiasi postazione o dispositivo.</p>
<p>Questa caratteristica lo rende particolarmente adatto in contesti dove serve dare accesso ai database a più persone (sviluppatori, analisti, team di supporto) senza dover gestire installazioni multiple, licenze client o configurazioni di rete complicate per ogni singolo utente.</p>
<p>Supporta nativamente i principali motori di database (PostgreSQL, MySQL, MariaDB, SQLite e molti altri tramite driver JDBC), e consente di centralizzare in un unico punto la gestione delle connessioni e dei permessi di accesso.</p>
<p>In questa guida vedremo come installare e configurare CloudBeaver Community su un server Ubuntu Server 26.04, sfruttando Docker Compose per ottenere un deployment pulito, riproducibile e facile da mantenere nel tempo: dalla preparazione dell&#8217;ambiente Docker, alla stesura del file docker-compose.yml, fino ai primi passi di configurazione post-installazione necessari per rendere l&#8217;istanza operativa.</p>
<p>&nbsp;</p>
<h3><strong>PREREQUISITI</strong></h3>
<p>Docker e Docker Compose già installati. Se non presenti eseguire i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">curl -fsSL https://get.docker.com -o get-docker.sh

sudo sh get-docker.sh

sudo usermod -aG docker $USER

newgrp docker</pre><p>Verificare che il plugin Compose sia disponibile con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose version</pre><p>Dovremmo visualizzare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">Docker Compose version v5.5.0</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>CREAZIONE DELLA STRUTTURA DI CARTELLE</strong></h3>
<p>Creare la struttura delle cartelle con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo mkdir -p /opt/cloudbeaver/workspace

sudo chown -R $USER:$USER /opt/cloudbeaver

cd /opt/cloudbeaver</pre><p>Il volume workspace è dove CloudBeaver salva configurazione, connessioni e credenziali cifrate: deve essere persistente.</p>
<p>&nbsp;</p>
<h3><strong>CREAZIONE DEL FILE DOCKER-COMPOSE.YML</strong></h3>
<p>Creare il file<strong> docker-compose.yml</strong> con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">nano /opt/cloudbeaver/docker-compose.yml</pre><p>Quindi incollare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">services:
cloudbeaver:
image: dbeaver/cloudbeaver:26.0.1
container_name: cloudbeaver
restart: unless-stopped
ports:
- "8978:8978"
volumes:
- ./workspace:/opt/cloudbeaver/workspace
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8978/status"]
interval: 30s
timeout: 10s
retries: 3</pre><p>Salvare e chiudere il file di configurazione</p>
<p><strong>NOTA BENE</strong>: 26.0.1 è la versione stabile più recente al momento; puoi anche usare il tag latest, ma per un ambiente di produzione è meglio fissare la versione (i downgrade non sono supportati, quindi conviene aggiornare consapevolmente).</p>
<p>&nbsp;</p>
<h3><strong>AVVIARE IL CONTAINER</strong></h3>
<p>Avviare il container con i comandi:</p><pre class="urvanov-syntax-highlighter-plain-tag">cd /opt/cloudbeaver

docker compose up -d</pre><p>Dovremmo visualizzare il seguente output:</p><pre class="urvanov-syntax-highlighter-plain-tag">[+] up 13/13
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Image dbeaver/cloudbeaver:26.0.1 Pulled
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Network cloudbeaver_default Created
<img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2714.png" alt="✔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Container cloudbeaver Started</pre><p>Controllare i log per verificare che sia partito correttamente con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">docker compose logs -f cloudbeaver</pre><p>Dovremmo visualizzare un output simile al seguente:</p><pre class="urvanov-syntax-highlighter-plain-tag">cloudbeaver | Starting Cloudbeaver Server
cloudbeaver | 2026-08-25 15:46:30.280 - Workspace path initialized: /opt/cloudbeaver/workspace
cloudbeaver | 2026-08-25 15:46:30.323 - Platform not initialized: metadata folder may be not set
cloudbeaver | 2026-08-25 15:46:30.333 - Starting instance server at http://localhost:33071
cloudbeaver | SLF4J(I): Logback configuration is used: conf/logback.xml
cloudbeaver | 25-08-2026 15:46:30.440 [main] DEBUG i.c.model.app.BaseServletApplication - Loading configuration from /opt/cloudbeaver/conf/cloudbeaver.conf</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>APERTURA PORTE FIREWALL</strong></h3>
<p>Aprire la porta sul firewall (se usi UFW) con il comando:</p><pre class="urvanov-syntax-highlighter-plain-tag">sudo ufw allow 8978/tcp</pre><p>Se preferisci esporlo solo su localhost (per poi metterci un reverse proxy come Nginx Proxy Manager, che già usi), modificare il binding della porta così:</p><pre class="urvanov-syntax-highlighter-plain-tag">ports:
- "127.0.0.1:8978:8978"</pre><p>&nbsp;</p>
<p>&nbsp;</p>
<h3><strong>SETUP INIZIALE VIA BROWSER</strong></h3>
<p>Richiamare da un qualsiasi browser il link <strong>http://&lt;IP-del-server&gt;:8978</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-01.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124694 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-01-1024x401.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 84" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-01-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-01-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare su <strong>Next</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-02.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124695 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-02-1024x401.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 85" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-02-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-02-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>In questa schermata compilare:</p>
<p><strong>Server Name</strong>: impostare un nome del server<br />
<strong>Administrator Credentials</strong>: impostare username e password amministratore<br />
<strong>Allow Anonymus Access</strong>: Decidere se abilitare l&#8217;accesso anonimo. Ti consiglio di disabilitarlo, soprattutto se il servizio è raggiungibile fuori dalla LAN</p>
<p>Confermare la configurazione e cliccare <strong>Next</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-03.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124696 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-03-1024x400.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="400" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 86" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-03-980x383.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-03-480x187.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Terminare la configurazione cliccando <strong>Finish</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-04.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124697 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-04-1024x402.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 87" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-04-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-04-480x189.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire le credendiziali create in precendenza e cliccare <strong>Login</strong></p>
<p>&nbsp;</p>
<h3><strong>AGGIUNGERE UNA CONNESSIONE AL DATABASE</strong></h3>
<p>Dal pannello cliccare sull&#8217;icona a forma di database/plug in alto a sinistra</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-05.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124698 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-05-1024x402.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="402" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 88" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-05-980x385.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-05-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Cliccare <strong>New Connection</strong></p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-06.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124699 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-06-1024x401.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 89" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-06-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-06-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Scegliere il driver (PostgreSQL, MySQL, MSSQL, ecc)</p>
<p><a href="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-07.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-1124700 size-large" src="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-07-1024x401.png" alt="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose - Raffaele Chiatto" width="1024" height="401" title="Installazione e Configurazione Base di CloudBeaver Community su Ubuntu Server 26.04 con Docker Compose 90" srcset="https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-07-980x384.png 980w, https://www.raffaelechiatto.com/wp-content/uploads/2026/08/inst-cloudbeaver-ubuntu-07-480x188.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw" /></a></p>
<p>Inserire tutte le info relative alla connessione quindi cliccare <strong>Create</strong></p>
<p>&nbsp;</p>
<h3><strong>NOTE OPERATIVE</strong></h3>
<p><strong>Backup</strong>: prima di ogni aggiornamento fare un backup della cartella workspace (contiene config e connessioni salvate).</p>
<p><strong>Aggiornamenti</strong>: cambiare il tag immagine nel compose e rilanciare docker compose up -d (ATTENZIONE: non usare mai una versione più vecchia di quella già in uso, i downgrade non sono supportati).</p>
<p><strong>HTTPS</strong>: se lo esponi con un reverse Proxy davanti, ricordarsi di forzare redirect HTTP→HTTPS e di impostare gli header giusti per il WebSocket (CloudBeaver lo usa per l&#8217;editor SQL live).</p>
<p>&nbsp;</p>
<h3><strong>CONCLUSIONI</strong></h3>
<p>Ecco un quadro pro/contro di CloudBeaver Community:</p>
<h4></h4>
<h4><strong>PRO</strong></h4>
<ul>
<li>È completamente gratuito e open source, senza costi di licenza né limiti sul numero di utenti o connessioni, a differenza delle edizioni Lite/Enterprise/Ultimate a pagamento.</li>
<li>Essendo web-based, non richiede installazioni sui client: basta un browser, il che semplifica molto la distribuzione in team distribuiti o con policy IT restrittive sui pacchetti installabili.</li>
<li>Il deployment con Docker è molto rapido e riproducibile, ed è lo stesso identico stack usato per la Enterprise, quindi eventuali migrazioni future sono semplici.</li>
<li>Supporta un buon numero di database out-of-the-box (PostgreSQL, MySQL, MariaDB, SQLite e altri via driver JDBC) e offre un editor SQL, navigazione degli schemi e gestione dati di base già solida per usi quotidiani.</li>
<li>Interfaccia centralizzata: amministratori e utenti condividono le stesse connessioni configurate sul server, riducendo duplicazione di credenziali e configurazioni sparse.</li>
</ul>
<h4></h4>
<h4><strong>CONTRO</strong></h4>
<ul>
<li>Manca il single sign-on e i metodi di autenticazione avanzati (SSO, OpenID, Entra ID/AzureAD, Okta, IAM): l&#8217;autenticazione resta basilare, il che può essere un problema in ambienti aziendali con requisiti di identity management centralizzato.</li>
<li>Non ha la gestione multi-utente/team avanzata con ruoli e permessi granulari, né la condivisione sicura delle credenziali tra utenti autorizzati: funzionalità di collaborazione più fini restano riservate alla Enterprise.</li>
<li>Mancano strumenti &#8220;PRO&#8221; utili in contesti più complessi: query builder visuale, diagrammi entità-relazione, gestione avanzata dei driver, query manager/history, session manager, secret management.</li>
<li>Nessun supporto nativo per Cloud Explorer / Cloud Storage (AWS, Azure, GCP), quindi per scenari cloud-native più integrati serve comunque l&#8217;Enterprise.</li>
<li>Nessun dominio personalizzato/SSL brandizzato incluso: per un deployment pubblico &#8220;professionale&#8221; bisogna comunque occuparsi tu stesso di reverse proxy, certificati e dominio (cosa comunque fattibile, ma è lavoro in più).</li>
<li>Essendo la fascia gratuita, il supporto è essenzialmente quello della community (GitHub, forum), senza SLA o supporto commerciale diretto.</li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://www.raffaelechiatto.com/installazione-e-configurazione-base-di-cloudbeaver-community-su-ubuntu-server-26-04-con-docker-compose/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>