Questa guida è stata testata su installazioni pulite di Fedora 31 e 33, ma potrebbe funzionare anche su versioni precedenti che utilizzano dnf come strumento di gestione dei pacchetti. Non si tratta di una guida ufficiale, ma potrebbe essere utile ad altri sviluppatori che utilizzano Fedora. Si basa in gran parte sulla guida di sviluppo per Ubuntu, con le modifiche relative ai diversi pacchetti per dnf. Si presuppone che non siano già installati nessuno dei pacchetti elencati, anche se la maggior parte verrà ignorata dagli strumenti se già presente.
Se stai cercando di installare Discourse per un ambiente di produzione, ti consigliamo di seguire le istruzioni di installazione docker su github.
Installazione dei pacchetti di sistema e di sviluppo necessari
sudo dnf update
sudo dnf install -y "@development-tools" git rpm-build zlib-devel ruby-devel readline-devel libpq-devel ImageMagick vips sqlite sqlite-devel nodejs npm curl gcc g++ bzip2 openssl-devel libyaml-devel libffi-devel zlib-devel gdbm-devel ncurses-devel optipng pngquant jhead jpegoptim gifsicle oxipng
Installazione dei pacchetti npm necessari
sudo npm install -g svgo pnpm
Installazione e configurazione di postgres
sudo dnf install postgresql-server postgresql-contrib
sudo postgresql-setup --initdb --unit postgresql
sudo systemctl enable postgresql
sudo systemctl start postgresql
sudo -u postgres -i createuser -s $USER
Installazione e configurazione di redis
sudo dnf install redis
sudo systemctl enable redis
sudo systemctl start redis
Installazione di rbenv, ruby-build e ruby
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
~/.rbenv/bin/rbenv init
printf 'export PATH="$HOME/.rbenv/bin:$PATH"\n' >> ~/.bashrc
printf 'eval "$(rbenv init - --no-rehash)"\n' >> ~/.bashrc
source ~/.bashrc
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
# conferma che l'installazione sia corretta
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash
rbenv install 2.7.1
rbenv global 2.7.1
rbenv rehash
Installazione delle dipendenze Ruby
gem update --system
gem install bundler mailcatcher rails
Clonazione del codice di Discourse
git clone https://github.com/discourse/discourse.git ~/discourse
cd ~/discourse
Installazione delle dipendenze di Discourse
bundle install
pnpm install
Creazione dei database necessari e caricamento dello schema
bundle exec rake db:create db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate
Test dell’installazione eseguendo i test
bundle exec rake autospec
Esecuzione dell’applicazione
bundle exec rails server
A questo punto dovresti essere in grado di visualizzare la pagina di configurazione di Discourse all’indirizzo http://localhost:3000.
Per ulteriori istruzioni sulla configurazione, consulta le guide di installazione ufficiali esistenti.
Questo documento è sottoposto a controllo delle versioni - suggerisci modifiche su github.