<div data-theme-toc="true"> </div>
Questa guida è solo per la configurazione dell’ambiente di sviluppo di Discourse. Se hai bisogno di installare Discourse in un ambiente di produzione, consulta le informazioni nella pagina: Install Discourse in production with the official supported instructions.
Per l’originale in inglese delle impostazioni dell’ambiente di sviluppo, fai riferimento alla pagina: Set up a local Discourse Development Environment?.
Questo articolo si concentra sull’impostazione per lo sviluppo su Ubuntu, poiché Discourse è sviluppato in Ruby e l’ambiente di sviluppo Ruby è più facile da configurare su Ubuntu. Pertanto, anche l’esecuzione in produzione di Discourse è ufficialmente consigliata su Ubuntu. Sebbene la nostra community funzioni bene su un ambiente REHL grazie all’uso di container Docker, se desideri sviluppare Discourse, è consigliabile utilizzare un ambiente Ubuntu.
Se utilizzi un sistema Windows, dovrai installare l’ambiente WSL. WSL è un ambiente basato su Ubuntu fornito da Windows, utilizzato principalmente per risolvere problemi di sviluppo di applicazioni Linux su Windows.
Questo articolo presuppone che tu non abbia ancora installato gli ambienti Ruby/Rails/Postgres/Redis su Ubuntu. Iniziamo la configurazione dell’ambiente di sviluppo!
Sebbene questa guida di sviluppo presupponga che tu stia utilizzando un ambiente di sviluppo Ubuntu, qualsiasi sistema Linux basato su Debian può essere utilizzato.
Questa guida di sviluppo è stata verificata su Ubuntu 18 e non richiede passaggi aggiuntivi per completare la configurazione dell’ambiente di sviluppo.
A causa delle differenze nell’uso dell’ambiente di sviluppo Ubuntu/Debian, potresti dover consultare le seguenti informazioni durante lo sviluppo su Ubuntu/Debian:
Installazione dell'ambiente di test Discourse su Ubuntu 20.04 e versioni successive
Su Ubuntu 20.04 e versioni successive, OpenSSL 3.0.2 verrà installato per impostazione predefinita. Potrebbe essere necessario compilare una versione precedente di OpenSSL e sostituire quella attuale (la versione consigliata ufficialmente è OpenSSL-1.1.1n). Devi anche controllare la versione di Ruby installata; puoi usare il comando ruby --version per visualizzarla. Discourse utilizza ancora la versione Ruby 2. Se stai usando Ruby 3.x o versioni successive, dovrai abbassare la tua versione di Ruby. È consigliabile utilizzare uno strumento di gestione delle versioni di Ruby per questo. Per l’attuale ambiente di esecuzione di Discourse, la versione Ruby 2.7.6 è considerata la più adatta. Fai riferimento a: Notes about Installing Discourse on Ubuntu 20.04 - #2 by SaraDev per ulteriori informazioni.
Installazione dell'ambiente di test Discourse su versioni di Ubuntu inferiori alla 20.04
La sezione seguente è stata aggiunta da @pfaffman il 16/05/22. Potrebbe esserci un errore, ma potresti non incontrarlo.
NOTA: Fai riferimento a: Failed to build ruby 2.7.5 on ubuntu 22.04 · rbenv/ruby-build · Discussion #1940 · GitHub per informazioni pertinenti.
Fine delle aggiunte di @pfaffman.
Sulla base della nostra esperienza di test, la versione Ubuntu 22 potrebbe presentare problemi di compilazione e pacchetti mancanti. Abbiamo completato la configurazione dell’ambiente di sviluppo locale solo su 20.04.
Installazione delle dipendenze di Discourse
Come utente generico, puoi eseguire il seguente comando nel terminale: script linux. Questo comando ti aiuterà a configurare rapidamente Rails nel tuo ambiente di sviluppo locale.
Il comando da eseguire è:
bash <(wget -qO- https://raw.githubusercontent.com/discourse/install-rails/master/linux)
Il comando sopra installerà i seguenti pacchetti sul tuo sistema locale:
- Git
- rbenv
- ruby-build
- Ruby (stabile)
- Rails
- PostgreSQL
- SQLite
- Redis
- Bundler
- MailHog
- ImageMagick
Se hai già installato alcuni software sul tuo sistema operativo locale o non desideri installare tutto, fai riferimento al contenuto di script e seleziona i software che non desideri installare al momento. Lo script di installazione sopra installerà tutti i software necessari per l’esecuzione di Discourse e fornirà il supporto per l’esecuzione di Discourse.
Una volta completata l’installazione di tutte le dipendenze di Discourse, possiamo procedere all’installazione di Discourse.
L’immagine sopra mostra l’interfaccia di installazione su Ubuntu. L’intero processo di installazione del software richiede tempo, potenzialmente più di 5 minuti, a seconda del tuo sistema.
Clonazione di Discourse
Clona Discourse nella cartella ~/discourse
git clone https://github.com/discourse/discourse.git ~/discourse
~ definisce la cartella Home corrente, il che significa che il programma Discourse verrà copiato nella tua cartella home.
Poiché utilizziamo il sottosistema WSL, in realtà cloneremo i file sul mio disco D.
Impostazione del Database
Crea un utente con lo stesso nome utente del tuo sistema Ubuntu:
sudo -u postgres createuser -s "$USER"
Se ricevi un errore durante l’esecuzione del comando sopra:
createuser: error: could not connect to database template1: could not connect to server: No such file or directory
Fai riferimento alle informazioni nella pagina: iSharkFly - 飞鲨.
Avvio di Discourse
Passa alla directory clonata di Discourse:
cd ~/discourse
Installa le gemme necessarie
source ~/.bashrc
bundle install
Installa anche le dipendenze JS necessarie
yarn install
A questo punto, hai installato tutte le gemme e le dipendenze necessarie. Prova a eseguire i seguenti comandi:
bundle exec rake db:create
bundle exec rake db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate
Se si verificano errori durante l’esecuzione, fai riferimento a: iSharkFly - 飞鲨.
Prova a eseguire il seguente comando:
bundle exec rake autospec
Il tuo progetto dovrebbe superare tutti i test.
Questo test richiede molto tempo e può essere saltato, altrimenti potrebbero volerci ore.
Esegui il seguente comando per avviare il server:
bundle exec rails server
Dopo aver completato i passaggi di installazione sopra, dovresti essere in grado di accedere alla tua installazione locale di Discourse tramite http://localhost:3000.
A partire da Discourse 2.5+, EmberCLI è diventato un’opzione obbligatoria per l’ambiente di sviluppo locale:
Se accedi direttamente alla porta 3000 tramite l’interfaccia, otterrai la seguente schermata di avviso:
Nel tuo terminale, entra nella cartella (
cd ~/discourse) ed esegui:
bin/ember-cli
Dovresti essere in grado di visualizzare la tua installazione locale di Discourse visitando http://localhost:4200.
È importante notare che entrambi i server devono essere avviati contemporaneamente. EmberCLI accede alla porta 3000 tramite un proxy inverso.
Creazione di un nuovo account Admin
Prima di poter accedere all’ambiente di sviluppo, è necessario creare un account amministratore. Esegui il seguente comando per crearlo:
RAILS_ENV=development bundle exec rake admin:create
Segui le istruzioni a riga di comando per creare questo account amministratore.
Le informazioni richieste sono l’indirizzo email e la password.
Configurazione della posta elettronica
Esegui MailHog:
mailhog
Una volta completati tutti i passaggi precedenti, il tuo ambiente di sviluppo locale di Discourse sarà configurato. Ora puoi accedere a Discourse come account amministratore.
Se desideri sviluppare plugin per Discourse, fai riferimento alla guida nella pagina: Developing Discourse Plugins - Part 1 - Create a basic plugin.


