Ce guide a été testé avec une installation fraîche de Fedora 31 et 33, mais il pourrait fonctionner sur des versions antérieures utilisant également dnf comme outil de gestion de paquets. Ce n’est pas un guide officiel, mais il pourrait s’avérer utile pour d’autres développeurs utilisant Fedora. Il est largement basé sur le guide de développement Ubuntu, avec des modifications pour les différents paquets de dnf. L’hypothèse est que vous n’avez aucun des paquets installés, bien que la plupart seront ignorés par les outils s’ils sont déjà installés.
Si vous souhaitez installer Discourse pour un environnement de production, préférez les instructions d’installation docker sur github.
Installation des paquets système et de développement requis
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
Installation des paquets npm requis
sudo npm install -g svgo pnpm
Installation et configuration de 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
Installation et configuration de redis
sudo dnf install redis
sudo systemctl enable redis
sudo systemctl start redis
Installation de rbenv, ruby-build et 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
# confirmer que l'installation est correcte
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
Installation des dépendances Ruby
gem update --system
gem install bundler mailcatcher rails
Clonage du code Discourse
git clone https://github.com/discourse/discourse.git ~/discourse
cd ~/discourse
Installation des dépendances Discourse
bundle install
pnpm install
Création des bases de données requises et chargement du schéma
bundle exec rake db:create db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate
Test de l’installation en exécutant les tests
bundle exec rake autospec
Exécution de l’application
bundle exec rails server
Vous devriez maintenant pouvoir voir la page de configuration de Discourse à l’adresse http://localhost:3000.
Pour la configuration supplémentaire, consultez les guides d’installation officiels existants.
Ce document est sous contrôle de version - suggérez des modifications sur github.