{"id":2468,"date":"2025-06-27T16:39:05","date_gmt":"2025-06-27T14:39:05","guid":{"rendered":"https:\/\/alessandromasciadri.com\/?p=2468"},"modified":"2025-06-27T16:53:31","modified_gmt":"2025-06-27T14:53:31","slug":"come-personalizzare-il-logo-del-frontend-di-zabbix","status":"publish","type":"post","link":"https:\/\/alessandromasciadri.com\/come-personalizzare-il-logo-del-frontend-di-zabbix\/","title":{"rendered":"Come personalizzare il logo del frontend di Zabbix"},"content":{"rendered":"\t\t<div data-akihiro-type=\"ama-post\" data-akihiro-id=\"2468\" class=\"akihiro akihiro-2468\" data-akihiro-post-type=\"post\">\n\t\t\t\t<div class=\"akihiro-element akihiro-element-780354f e-flex e-con-boxed e-con e-parent\" data-id=\"780354f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"akihiro-element akihiro-element-2736a19 akihiro-widget akihiro-widget-text-editor\" data-id=\"2736a19\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>In questo scenario abbiamo la necessit\u00e0 di personalizzare logo e vari link presenti sull&#8217;interfaccia di frontend di Zabbix. Vediamo come fare sia in ambiente tradizionale, sia in ambiente dockerizzato.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-ba7cfa2 akihiro-widget akihiro-widget-heading\" data-id=\"ba7cfa2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h3 class=\"akihiro-heading-title akihiro-size-default\">Rebranding di Zabbix in ambiente tradizionale<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"akihiro-element akihiro-element-5f54f1e e-flex e-con-boxed e-con e-parent\" data-id=\"5f54f1e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"akihiro-element akihiro-element-ac54db0 akihiro-widget akihiro-widget-text-editor\" data-id=\"ac54db0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Nel caso di installazione tradizionale di Zabbix, l&#8217;operazione di rebranding \u00e8 alquanto semplice in quanto Zabbix offre nativamente questa funzionalit\u00e0. Questo <a href=\"https:\/\/github.com\/initMAX\/Zabbix-UI-Rebranding-skeleton\">GitHub repo<\/a> contiene tutto quello che \u00e8 necessario per l&#8217;operazione di rebranding.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-692ef57 akihiro-widget akihiro-widget-heading\" data-id=\"692ef57\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h5 class=\"akihiro-heading-title akihiro-size-default\">Creare la struttura delle directory<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-e9e6289 akihiro-widget akihiro-widget-text-editor\" data-id=\"e9e6289\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Il primo passo \u00e8 quello di creare la struttura delle directory. In base alla nostra versione, usiamo uno dei seguenti comandi.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-222ce50 akihiro-widget akihiro-widget-text-editor\" data-id=\"222ce50\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.0 e inferiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-f2633fb akihiro-widget akihiro-widget-code-highlight\" data-id=\"f2633fb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo mkdir -p \/usr\/share\/zabbix\/local\/conf\nsudo mkdir -p \/usr\/share\/zabbix\/rebranding<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-9e94a0d akihiro-widget akihiro-widget-text-editor\" data-id=\"9e94a0d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.2 e superiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-5b7ca82 akihiro-widget akihiro-widget-code-highlight\" data-id=\"5b7ca82\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo mkdir -p \/usr\/share\/zabbix\/ui\/local\/conf\nsudo mkdir -p \/usr\/share\/zabbix\/ui\/rebranding<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-2789e31 akihiro-widget akihiro-widget-heading\" data-id=\"2789e31\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h5 class=\"akihiro-heading-title akihiro-size-default\">Copiare le nuove immagini<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-0c6117a akihiro-widget akihiro-widget-text-editor\" data-id=\"0c6117a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Copiamo le immagini con il nostro logo nella directory appena creata.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-f459ac5 akihiro-widget akihiro-widget-text-editor\" data-id=\"f459ac5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.0 e inferiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-8fc8035 akihiro-widget akihiro-widget-code-highlight\" data-id=\"8fc8035\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo cp \/path\/to\/your\/images\/*.svg \/usr\/share\/zabbix\/rebranding\/<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-3d25adc akihiro-widget akihiro-widget-text-editor\" data-id=\"3d25adc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.2 e superiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-a1c8ee9 akihiro-widget akihiro-widget-code-highlight\" data-id=\"a1c8ee9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo cp \/path\/to\/your\/images\/*.svg \/usr\/share\/zabbix\/ui\/rebranding\/<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-4e31c99 akihiro-widget akihiro-widget-text-editor\" data-id=\"4e31c99\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Impostiamo ora i permessi sui nuovi file di immagine. In genere la ownership da attribuire \u00e8 <code>www-data<\/code> o <code>apache<\/code>, ma questo dipende dalla propria configurazione del web server.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-6a255be akihiro-widget akihiro-widget-text-editor\" data-id=\"6a255be\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.0 e inferiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-b44370e akihiro-widget akihiro-widget-code-highlight\" data-id=\"b44370e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo chown -R www-data:www-data \/usr\/share\/zabbix\/local\/conf\nsudo chmod 755 \/usr\/share\/zabbix\/local\/conf\nsudo chmod 644 \/usr\/share\/zabbix\/local\/conf\/brand.conf.php\nsudo chown -R www-data:www-data \/usr\/share\/zabbix\/rebranding\nsudo chmod 755 \/usr\/share\/zabbix\/rebranding\nsudo chmod 644 \/usr\/share\/zabbix\/rebranding\/*<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-71dda17 akihiro-widget akihiro-widget-text-editor\" data-id=\"71dda17\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.2 e superiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-1c510df akihiro-widget akihiro-widget-code-highlight\" data-id=\"1c510df\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo chown -R www-data:www-data \/usr\/share\/zabbix\/ui\/local\/conf\nsudo chmod 755 \/usr\/share\/zabbix\/ui\/local\/conf\nsudo chmod 644 \/usr\/share\/zabbix\/ui\/local\/conf\/brand.conf.php\nsudo chown -R www-data:www-data \/usr\/share\/zabbix\/ui\/rebranding\nsudo chmod 755 \/usr\/share\/zabbix\/ui\/rebranding\nsudo chmod 644 \/usr\/share\/zabbix\/ui\/rebranding\/*<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-f29b7e3 akihiro-widget akihiro-widget-heading\" data-id=\"f29b7e3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h5 class=\"akihiro-heading-title akihiro-size-default\">Creare il file di configurazione brand.conf.php<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-f88c5bb akihiro-widget akihiro-widget-text-editor\" data-id=\"f88c5bb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ora non resta che creare il file di configurazione <code>brand.conf.php<\/code><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-56425b7 akihiro-widget akihiro-widget-text-editor\" data-id=\"56425b7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.0 e inferiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-fd8775e akihiro-widget akihiro-widget-code-highlight\" data-id=\"fd8775e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>vi \/usr\/share\/zabbix\/local\/conf\/brand.conf.php<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-78da475 akihiro-widget akihiro-widget-text-editor\" data-id=\"78da475\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><em>Per versioni 7.2 e superiori<\/em><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-b1d12f6 akihiro-widget akihiro-widget-code-highlight\" data-id=\"b1d12f6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>vi \/usr\/share\/zabbix\/ui\/local\/conf\/brand.conf.php<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-a1d8b8e akihiro-widget akihiro-widget-text-editor\" data-id=\"a1d8b8e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Nel file di configurazione inseriamo il seguente codice, personalizzandolo a piacimento<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-69850ee akihiro-widget akihiro-widget-code-highlight\" data-id=\"69850ee\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-php \">\n\t\t\t\t<code readonly=\"true\" class=\"language-php\">\n\t\t\t\t\t<xmp><?php\nreturn [\n    'BRAND_LOGO' => '.\/rebranding\/my-logo-114x30.svg',\n    'BRAND_LOGO_SIDEBAR' => '.\/rebranding\/my-logo-91x24.svg',\n    'BRAND_LOGO_SIDEBAR_COMPACT' => '.\/rebranding\/my-logo-24x24.svg',\n    'BRAND_FOOTER' => 'Alessandro Masciadri',\n    'BRAND_HELP_URL' => 'https:\/\/www.alessandromasciadri.com\/'\n];<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"akihiro-element akihiro-element-a3d0aaf e-flex e-con-boxed e-con e-parent\" data-id=\"a3d0aaf\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"akihiro-element akihiro-element-c9d08d4 akihiro-widget akihiro-widget-heading\" data-id=\"c9d08d4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h3 class=\"akihiro-heading-title akihiro-size-default\">Rebranding di Zabbix in ambiente Docker<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-9ce7dfd akihiro-widget akihiro-widget-text-editor\" data-id=\"9ce7dfd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Nel caso in cui il nostro server Zabbix gira in ambiente Docker, le cose sono diverse. Anzitutto dobbiamo tenere in considerazione che possiamo procedere in due modi distinti:<\/p><ol><li>Bind Mount del file di configurazione e dei loghi.<\/li><li>Build personalizzata dell&#8217;immagine Zabbix Frontend<\/li><\/ol>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-abebda4 akihiro-widget akihiro-widget-heading\" data-id=\"abebda4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h3 class=\"akihiro-heading-title akihiro-size-default\">1. Soluzione veloce: Bind Mount<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-53c2bcf akihiro-widget akihiro-widget-text-editor\" data-id=\"53c2bcf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>La soluzione pi\u00f9 veloce ed indolore (sicuramente adatta in fasi di test) \u00e8 di creare i file sulla macchina host e di eseguire un bind mount dei file nel docker container. L&#8217;input a questa cosa l&#8217;ho ricevuto da <a href=\"https:\/\/github.com\/zabbix\/zabbix-docker\/issues\/1457\">questa Feature request<\/a> aperta su GitHub. Creiamo quindi le cartelle e il file di configurazione sulla macchina host con questi comandi:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-a869ca7 akihiro-widget akihiro-widget-code-highlight\" data-id=\"a869ca7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>mkdir -p ~\/zabbix\/local\/conf\nmkdir -p ~\/zabbix\/rebranding<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-0825f9e akihiro-widget akihiro-widget-text-editor\" data-id=\"0825f9e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Copiamo le immagini del nostro logo nella cartella <code>~\/zabbix\/rebranding<\/code><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-5284e85 akihiro-widget akihiro-widget-code-highlight\" data-id=\"5284e85\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>cp \/path\/to\/your\/images\/*.svg \/usr\/share\/zabbix\/rebranding\/<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-0b44f92 akihiro-widget akihiro-widget-text-editor\" data-id=\"0b44f92\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Creiamo il file di configurazione<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-1e43305 akihiro-widget akihiro-widget-code-highlight\" data-id=\"1e43305\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>vi zabbix\/local\/conf\/brand.conf.php<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-ad9dca3 akihiro-widget akihiro-widget-text-editor\" data-id=\"ad9dca3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Inseriamo il seguente codice personalizzandolo a piacimento<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-65557a2 akihiro-widget akihiro-widget-code-highlight\" data-id=\"65557a2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-php \">\n\t\t\t\t<code readonly=\"true\" class=\"language-php\">\n\t\t\t\t\t<xmp><?php\nreturn [\n    'BRAND_LOGO' => '.\/rebranding\/my-logo-114x30.svg',\n    'BRAND_LOGO_SIDEBAR' => '.\/rebranding\/my-logo-91x24.svg',\n    'BRAND_LOGO_SIDEBAR_COMPACT' => '.\/rebranding\/my-logo-24x24.svg',\n    'BRAND_FOOTER' => 'Alessandro Masciadri',\n    'BRAND_HELP_URL' => 'https:\/\/www.alessandromasciadri.com\/'\n];<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-18375de akihiro-widget akihiro-widget-text-editor\" data-id=\"18375de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Apriamo il docker-compose.yaml utilizzato per la build dei container e aggiungiamo le righe di bind mount dei file<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-605c1bc akihiro-widget akihiro-widget-code-highlight\" data-id=\"605c1bc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-json \">\n\t\t\t\t<code readonly=\"true\" class=\"language-json\">\n\t\t\t\t\t<xmp>volumes:\n  - \/root\/zabbix\/local\/conf\/brand.conf.php:\/usr\/share\/zabbix\/local\/conf\/brand.conf.php\n  - \/root\/zabbix\/rebranding\/:\/usr\/share\/zabbix\/rebranding\/<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-b3e1a64 akihiro-widget akihiro-widget-text-editor\" data-id=\"b3e1a64\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Nel mio caso uso il la versione con nginx e PostgreSQL, quindi il file da modificare \u00e8 <code>docker-compose_v3_alpine_pgsql_latest.yaml<\/code>. La sezione completa si presenta pertanto in questo modo:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-25d21ab akihiro-widget akihiro-widget-code-highlight\" data-id=\"25d21ab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-json \">\n\t\t\t\t<code readonly=\"true\" class=\"language-json\">\n\t\t\t\t\t<xmp>zabbix-web-nginx-pgsql:\n  extends:                                                                                  \n   file: compose_zabbix_components.yaml\n   service: web-nginx-pgsql        \n  image: \"${ZABBIX_WEB_NGINX_PGSQL_IMAGE}:${ZABBIX_ALPINE_IMAGE_TAG}${ZABBIX_IMAGE_TAG_POSTFIX}\"\n  volumes:       \n   - \/etc\/timezone:\/etc\/timezone:ro          \n   - \/root\/zabbix\/local\/conf\/brand.conf.php:\/usr\/share\/zabbix\/local\/conf\/brand.conf.php\n   - \/root\/zabbix\/rebranding\/:\/usr\/share\/zabbix\/rebranding\/<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>In questo scenario abbiamo la necessit\u00e0 di personalizzare logo e vari link presenti sull&#8217;interfaccia di frontend di Zabbix. Vediamo come fare sia in ambiente tradizionale, sia in ambiente dockerizzato. Rebranding di Zabbix in ambiente tradizionale Nel caso di installazione tradizionale di Zabbix, l&#8217;operazione di rebranding \u00e8 alquanto semplice in quanto Zabbix offre nativamente questa funzionalit\u00e0. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[20,60],"class_list":["post-2468","post","type-post","status-publish","format-standard","hentry","category-sistemistica","tag-linux","tag-zabbix"],"_links":{"self":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts\/2468","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/comments?post=2468"}],"version-history":[{"count":7,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts\/2468\/revisions"}],"predecessor-version":[{"id":2475,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts\/2468\/revisions\/2475"}],"wp:attachment":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/media?parent=2468"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/categories?post=2468"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/tags?post=2468"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}