Come installare un server Leanote su CentOS 7

Leanote è un'alternativa gratuita, leggera e open source a Evernote, che è scritta in Golang. Con l'esperienza dell'utente in mente, Leanote offre agli utenti molte funzionalità pratiche, tra cui supporto multipiattaforma, scrittura nella sintassi MarkDown, blog pubblici o privati, raccolta e condivisione delle conoscenze e collaborazione in team.

In questo articolo, ti guiderò attraverso la configurazione di un server Leanote su un'istanza del server CentOS 7. Per motivi di sicurezza, HTTPS supportverrà inoltre coperta l' abilitazione all'uso di un certificato SSL Let's Encrypt e Nginx.

Prerequisiti

  • Un'istanza del server Vultr CentOS 7 appena distribuita. Dì che il suo indirizzo IPv4 è 203.0.113.1.
  • Un utente sudo di nome leanote.
  • Tutti i pacchetti software sulla macchina sono stati aggiornati all'ultimo stato stabile utilizzando il repository EPEL YUM. Vedi i dettagli qui .
  • Un dominio leanote.example.compuntato all'istanza del server sopra menzionata.

Passaggio 1: creare un file di scambio

Quando si avvia una nuova istanza del server Vultr CentOS 7, si consiglia sempre di impostare un file di scambio al fine di garantire il corretto funzionamento del sistema. Ad esempio, la creazione di un file di scambio di dimensioni pari a 2048 MB è adatta per una macchina con 2 GB di memoria.

sudo dd if=/dev/zero of=/swapfile count=2048 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

Nota: se si utilizza una dimensione server diversa, potrebbe essere necessario modificare la dimensione del file di scambio.

Passaggio 2: ottenere i file binari di Leanote 2.6.1

Scarica ed estrai l'ultima versione stabile di Leanote per il sistema Linux a 64 bit:

cd
wget https://sourceforge.net/projects/leanote-bin/files/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz
tar -zxvf leanote-linux-amd64-v2.6.1.bin.tar.gz

Passaggio 3: installare MongoDB Community Edition 4.0

Come richiesto da Leanote, il DBMS NoSQL MongoDB deve essere installato prima di poter installare correttamente un server Leanote.

Imposta il repo MongoDB 4.0 YUM

Creare il repository YUM MongoDB 4.0 come segue:

cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF

Installa i pacchetti MongoDB 4.0 usando YUM

Installa tutti i componenti e gli strumenti MongoDB usando il repository YUM MongoDB 4.0 creato in precedenza:

sudo yum install -y mongodb-org

Configurare SELinux per MongoDB 4.0

Per impostazione predefinita, MongoDB userebbe la 27017porta quando funziona, il che non è consentito se SELinux è in enforcingmodalità sulla macchina CentOS 7. Utilizzare il seguente comando per confermare la modalità SELinux corrente:

sudo getenforce

Su un'istanza del server Vultr CentOS 7, SELinux è disabilitato per impostazione predefinita. Quindi l'output del comando sopra sarebbe:

Disabled

In questo caso, puoi sentirti libero di saltare le seguenti istruzioni sulla configurazione di SELinux e andare avanti.

Tuttavia, se si esegue un'istanza del server CentOS 7 originale, l'output del comando precedente sarebbe Enforcing. È necessario eseguire una delle tre opzioni seguenti prima di poter avviare e abilitare il servizio MongoDB.

  • Opzione 1: consentire a MongoDB di utilizzare la 27017porta

    sudo semanage port -a -t mongod_port_t -p tcp 27017
    
  • Opzione 2: disabilitare SELinux

    sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
    sudo shutdown -r now
    
  • Opzione 3: cambia SELinux in permissivemodalità

    sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
    sudo shutdown -r now
    

Avviare il servizio MongoDB e farlo iniziare dopo un riavvio del sistema:

sudo systemctl start mongod.service
sudo systemctl enable mongod.service

Passaggio 4: importare i dati Leanote iniziali in MongoDB

Utilizzare i comandi seguenti per importare i dati Leanote iniziali in MongoDB:

rm /home/leanote/leanote/mongodb_backup/leanote_install_data/.DS_Store
mongorestore --host localhost -d leanote --dir /home/leanote/leanote/mongodb_backup/leanote_install_data/

Passaggio 5: abilitare l'autenticazione MongoDB

Per motivi di sicurezza, è necessario abilitare il controllo dell'accesso a MongoDB subito dopo che il servizio MongoDB è attivo e funzionante. A tale scopo, è necessario creare almeno due account utente MongoDB: un account amministratore utente e un account amministratore database. Sarà inoltre necessario modificare la configurazione di MongoDB.

Immettere la shell MongoDB:

mongo --host 127.0.0.1:27017

Passa al admindatabase:

use admin

Crea un amministratore utente chiamato useradminche utilizza una password useradminpassword:

db.createUser({ user: "useradmin", pwd: "useradminpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

Nota: l'amministratore utente useradmindovrebbe gestire tutti gli utenti MongoDB, quindi è saggio scegliere una password complessa. Naturalmente, un suggerimento più sicuro è quello di sostituire useradmincon un nome utente difficile da indovinare.

Passa al leanotedatabase:

use leanote

Creare un amministratore di database denominato leanoteadminche utilizza una password leanoteadminpassword:

db.createUser({ user: "leanoteadmin", pwd: "leanoteadminpassword", roles: [{ role: "dbOwner", db: "leanote" }] })

Nota : di nuovo, si consiglia di scegliere un nome utente meno conosciuto e una password difficile da indovinare.

Dopo aver creato gli utenti MongoDB, è possibile confermare i risultati:

use admin
db.auth("useradmin", "useradminpassword")

Conferma l'amministratore del database:

use leanote
db.auth("leanoteadmin", "leanoteadminpassword")

Entrambi verranno emessi 1come conferma.

Esci dalla shell MongoDB:

exit

Per abilitare il controllo di accesso a MongoDB, è inoltre necessario aggiungere due righe al file di configurazione di MongoDB /etc/mongod.conf, come segue:

sudo bash -c "echo 'security:' >> /etc/mongod.conf"
sudo bash -c "echo '  authorization: enabled' >> /etc/mongod.conf"

Riavviare il servizio MongoDB per rendere effettive le modifiche:

sudo systemctl restart mongod.service

Da ora in poi, è possibile utilizzare solo i due account utente per accedere e gestire MongoDB, useradminper gestire tutti gli utenti MongoDB e solo leanoteadminper la gestione del leanotedatabase.

Passaggio 6: configura Leanote

Eseguire il backup del file di configurazione Leanote /home/leanote/leanote/conf/app.conf:

cd /home/leanote/leanote/conf/
cp app.conf app.conf.bak

Utilizzare l' vieditor per aprire il file di configurazione di Leanote:

vi app.conf

Trova le seguenti righe una per una:

site.url=http://localhost:9000
db.username= # if not exists, please leave it blank
db.password= # if not exists, please leave it blank
app.secret=V85ZzBeTnzpsHyjQX4zukbQ8qqtju9y2aDM55VWxAH9Qop19poekx3xkcDVvrD0y

Sostituirli, rispettivamente, come mostrato di seguito:

site.url=http://leanote.example.com:9000
db.username=leanoteadmin
db.password=leanoteadminpassword
app.secret=E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sA

Nota: per motivi di sicurezza, il valore del app.secretparametro DEVE essere una stringa casuale a 64 bit diversa da quella originale. Assicurati di sostituire il valore E52tyCDBRk39HmhdGYJLBS3etXpnz7DymmxkgHBYxd7Y9muWVVJ5QZNdDEaHV2sAcon il tuo valore casuale a 64 bit.

Salva ed esci:

:wq!

Passaggio 7: avviare Leanote

Modifica le regole del firewall per consentire il traffico TCP in entrata sulla porta 9000:

sudo firewall-cmd --permanent --add-port=9000/tcp
sudo systemctl reload firewalld.service

Avvia Leanote usando lo script ufficiale:

cd /home/leanote/leanote/bin
bash run.sh

Dopo aver visto Listening on.. 0.0.0.0:9000, punta il tuo browser web preferito http://leanote.example.com:9000per iniziare a utilizzare il sito Leanote.

Utilizza l'account admin Leanote predefinito per accedere:

  • Nome utente: admin
  • Parola d'ordine: abc123

Per motivi di sicurezza, è necessario modificare la password predefinita immediatamente dopo l'accesso.

Passaggio 8: abilitare l' HTTPSaccesso

Per ora, puoi già accedere al server Leanote utilizzando il protocollo HTTP, un protocollo meno sicuro. Per migliorare la sicurezza del sistema, è possibile abilitare HTTPSdistribuendo sul proprio computer sia un certificato SSL Let's Encrypt che il proxy inverso Nginx.

Configurare correttamente un nome host e un nome di dominio completo (FQDN)

Prima di poter ottenere il certificato SSL Let's Encrypt, è necessario impostare correttamente il nome host e l'FQDN sul proprio computer.

Innanzitutto, premi CTRL+ Cper interrompere lo script Leanote run.sh.

Quindi, impostare il nome host e il nome FQDN come segue:

sudo hostnamectl set-hostname leanote
cat <<EOF | sudo tee /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 leanote.example.com leanote
EOF

Puoi anche confermare i risultati:

hostname
hostname -f

Modifica le regole del firewall

Bloccare il traffico in entrata sulla porta 9000e consentire il traffico in entrata sulle porte per HTTPe HTTPSservizi:

sudo firewall-cmd --permanent --remove-port=9000/tcp
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service

Richiedi un certificato SSL Let's Encrypt

Installa l'utilità Certbot:

sudo yum -y install yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot

Richiedi un certificato SSL Let's Encrypt per il dominio leanote.example.com:

sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d leanote.example.com

Il certificato e la catena verranno salvati come segue:

/etc/letsencrypt/live/leanote.example.com/fullchain.pem

Il file della chiave privata verrà salvato come segue:

/etc/letsencrypt/live/leanote.example.com/privkey.pem

Per impostazione predefinita, il certificato SSL Let's Encrypt scadrà tra tre mesi. È possibile impostare un processo cron, come mostrato di seguito, per rinnovare automaticamente i certificati Let's Encrypt:

sudo crontab -e

Premere Iper accedere alla insertmodalità, quindi immettere la seguente riga:

0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew

Salva ed esci:

:wq!

Questo cron job proverà a rinnovare il certificato Let's Encrypt ogni giorno a mezzogiorno.

Installa Nginx come proxy inverso

Installa Nginx usando il repository EPEL YUM:

sudo yum install -y nginx

Crea un file di configurazione per Leanote:

cat <<EOF | sudo tee /etc/nginx/conf.d/leanote.conf
# Redirect HTTP to HTTPS
server {
    listen      80;
    server_name leanote.example.com;
    return      301 https://\$server_name\$request_uri;
}

server {

    # Setup HTTPS certificates
    listen       443 default ssl;
    server_name  leanote.example.com;
    ssl_certificate      /etc/letsencrypt/live/leanote.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/leanote.example.com/privkey.pem;

    # Proxy to the Leanote server
    location / {
        proxy_set_header X-Real-IP         \$remote_addr;
        proxy_set_header X-Forwarded-For   \$proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-Host  \$http_host;
        proxy_set_header Host              \$http_host;
        proxy_max_temp_file_size           0;
        proxy_pass                         http://127.0.0.1:9000;
        proxy_redirect                     http:// https://;
    }
}
EOF

Riavvia Nginx per rendere effettive le modifiche:

sudo systemctl daemon-reload
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service

Modifica l' site.urlimpostazione nel file di configurazione di Leanote:

cd /home/leanote/leanote/conf/
vi app.conf

Trova la seguente riga:

site.url=http://leanote.example.com:9000

Sostituiscilo:

site.url=https://leanote.example.com

Salva ed esci:

:wq!

Esegui di nuovo lo script Leanote:

cd /home/leanote/leanote/bin
bash run.sh

Ora, punta il tuo browser web preferito http://leanote.example.com/e scoprirai che il HTTPSprotocollo si attiva automaticamente. Accedi come adminutente con la nuova password che hai impostato in precedenza o registra nuovi account utente per la collaborazione in team.

Ancora una volta, premi CTRL+ Cper interrompere lo script Leanote. Domani demonizzeremo questo script.

Passaggio 9: installare il wkhtmltopdfprogramma

Leanote sceglie di utilizzare il wkhtmltopdfprogramma per esportare pagine HTML come file PDF. Installa wkhtmltopdf:

cd
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm
sudo yum localinstall -y wkhtmltox-0.12.5-1.centos7.x86_64.rpm
which wkhtmltopdf

Non dimenticare di inviare il wkhtmltopdfpercorso binario /usr/local/bin/wkhtmltopdfnella Export PDFsezione nella dashboard dell'amministratore web di Leanote quando Leanote è di nuovo attivo e funzionante.

Nota: se si trovano caratteri illeggibili nei file PDF esportati, è possibile provare a risolvere il problema aggiungendo i file di font richiesti alla /usr/share/fonts/directory.

Passaggio 10: utilizzare Supervisor per mantenere attivo e funzionante lo script Leanote

Per mantenere online il sito Leanote, è possibile utilizzare l'utilità Supervisore per avviare automaticamente lo script Leanote in caso di arresto anomalo.

Installa Supervisor utilizzando YUM:

sudo yum install -y supervisor

Crea un semplice .inifile Supervisor per Leanote:

cat <<EOF | sudo tee /etc/supervisord.d/leanote.ini
[program:leanote]
command=bash /home/leanote/leanote/bin/run.sh
directory=/home/leanote/leanote/bin/
priority=999
autostart=true
autorestart=true
user=leanote
redirect_stderr=true
EOF

Avviare il servizio Supervisore e il servizio Leanote:

sudo supervisord -c /etc/supervisord.conf

Conferma lo stato del servizio Leanote:

sudo supervisorctl status leanote

L'output sarà simile al seguente:

leanote                          RUNNING   pid 3707, uptime 0:02:36


Leave a Comment

Come installare e configurare CyberPanel sul server CentOS 7

Come installare e configurare CyberPanel sul server CentOS 7

Usi un sistema diverso? Introduzione CyberPanel è uno dei primi pannelli di controllo sul mercato che è sia open source che utilizza OpenLiteSpeed. Che cosa

Come installare e configurare Sensu Monitoring su CentOS 7

Come installare e configurare Sensu Monitoring su CentOS 7

Introduzione Sensu è una soluzione di monitoraggio gratuita e open source che può essere utilizzata per monitorare server, applicazioni e vari servizi di sistema. Sensu i

Come installare OpenMeetings su CentOS 7

Come installare OpenMeetings su CentOS 7

Usi un sistema diverso? Apache OpenMeetings è unapplicazione per conferenze Web open source. È scritto in Java e supporta più server di database. io

Come usare Sudo su Debian, CentOS e FreeBSD

Come usare Sudo su Debian, CentOS e FreeBSD

Luso di un utente sudo per accedere a un server ed eseguire comandi a livello di root è una pratica molto comune tra Linux e Unix Systems Administrator. Luso di un sud

Come installare RabbitMQ su CentOS 7

Come installare RabbitMQ su CentOS 7

Usando un sistema diverso? RabbitMQ è un broker di messaggi open source ampiamente utilizzato scritto nel linguaggio di programmazione Erlang. Come middleware orientato ai messaggi

Installazione di Nginx-RTMP su CentOS 7

Installazione di Nginx-RTMP su CentOS 7

Usi un sistema diverso? RTMP è ottimo per pubblicare contenuti live. Quando RTMP è associato a FFmpeg, i flussi possono essere convertiti in varie qualità. Vultr i

Come installare TaskBoard 0.3.1 su CentOS 7

Come installare TaskBoard 0.3.1 su CentOS 7

TaskBoard è unapp Web di gestione del tempo gratuita e open source. Ispirato da Kanban, TaskBoard può aiutarti a tenere traccia delle cose che devono essere fatte in a

Come installare Gradle su CentOS 7

Come installare Gradle su CentOS 7

Usi un sistema diverso? Gradle è un set di strumenti di automazione di build gratuito e open source basato sui concetti di Apache Ant e Apache Maven. Gradle fornisce

Installa un server FTP con ProFTPd su CentOS 6 o CentOS 7

Installa un server FTP con ProFTPd su CentOS 6 o CentOS 7

Usi un sistema diverso? In questa guida, vedremo come configurare un server FTP (ProFTPd) per trasferire file tra il tuo PC e il tuo server.

Installazione di Netdata su CentOS 7

Installazione di Netdata su CentOS 7

Usando un sistema diverso? Netdata è una stella nascente nel campo del monitoraggio delle metriche di sistema in tempo reale. Rispetto ad altri strumenti dello stesso tipo, Netdata:

Come installare Apache Cassandra 3.11.x su CentOS 7

Come installare Apache Cassandra 3.11.x su CentOS 7

Usi un sistema diverso? Apache Cassandra è un sistema di gestione di database NoSQL gratuito e open source progettato per fornire scalabilità, alta

Come installare Just Cause 2 (JC2-MP) Server su CentOS 7

Come installare Just Cause 2 (JC2-MP) Server su CentOS 7

In questo tutorial imparerai bene come configurare un server multiplayer Just Cause 2. Prerequisiti Assicurarsi che il sistema sia completamente aggiornato prima di iniziare

Come installare Starbound Server su CentOS 7

Come installare Starbound Server su CentOS 7

Usando un sistema diverso? In questo tutorial, spiegherò come impostare un server Starbound su CentOS 7. Prerequisiti Devi possedere questo gioco su di te

Installazione e configurazione di ZNC su CentOS 7

Installazione e configurazione di ZNC su CentOS 7

ZNC è un buttafuori IRC gratuito e open source che rimane permanentemente connesso a una rete in modo che i client possano ricevere messaggi inviati mentre sono offline. Thi

Come installare Django su CentOS 7

Come installare Django su CentOS 7

Django è un popolare framework Python per la scrittura di applicazioni Web. Con Django, puoi creare applicazioni più velocemente, senza reinventare la ruota. Se vuoi

Come impostare lautenticazione a due fattori (2FA) per SSH su CentOS 6 utilizzando Google Authenticator

Come impostare lautenticazione a due fattori (2FA) per SSH su CentOS 6 utilizzando Google Authenticator

Dopo aver modificato la porta SSH, configurato il port knocking e apportato altre modifiche per la sicurezza SSH, cè forse un altro modo per proteggerti

Come installare MyCLI su Linux (CentOS, Debian, Fedora e Ubuntu)

Come installare MyCLI su Linux (CentOS, Debian, Fedora e Ubuntu)

Introduzione MyCLI è un client da riga di comando per MySQL e MariaDB che ti consente di completare automaticamente e ti aiuta con la sintassi dei tuoi comandi SQL. MyCL

Come installare Directus 6.4 CMS su un VPS CentOS 7 LAMP

Come installare Directus 6.4 CMS su un VPS CentOS 7 LAMP

Usi un sistema diverso? Directus 6.4 CMS è un sistema di gestione dei contenuti senza testa (CMS) potente e flessibile, gratuito e open source che fornisce agli sviluppatori

Creare una rete di server Minecraft con BungeeCord su Debian 8, Debian 9 o CentOS 7

Creare una rete di server Minecraft con BungeeCord su Debian 8, Debian 9 o CentOS 7

Cosa ti serve Un VPS Vultr con almeno 1 GB di RAM. Accesso SSH (con privilegi di root / amministrativi). Passaggio 1: installare prima BungeeCord

Come installare MaraDNS su CentOS 6

Come installare MaraDNS su CentOS 6

MaraDNS è un programma server DNS open source leggero ma robusto. Rispetto ad altre applicazioni dello stesso tipo, come ISC BIND, PowerDNS e djbdns

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.