Esta guía se ha probado con una instalación nueva de Fedora 31 y 33, pero puede funcionar en versiones anteriores que también utilicen dnf como herramienta de gestión de paquetes. Esta no es una guía oficial, pero puede ser útil para otros desarrolladores que usen Fedora. En gran parte se basa en la guía de desarrollo de Ubuntu, con cambios para los diferentes paquetes de dnf. Se asume que no tienes ninguno de los paquetes instalados todavía, aunque la mayoría se omitirá con las herramientas si ya está instalado.
Si estás buscando instalar Discourse para un entorno de producción, prefiere las instrucciones de instalación con docker en github.
Instalar los paquetes de sistema y de desarrollo necesarios
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 jpegoptim gifsicle oxipng
Instalar los paquetes npm necesarios
sudo npm install -g svgo pnpm
Instalar y configurar 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
Instalar y configurar redis
sudo dnf install redis
sudo systemctl enable redis
sudo systemctl start redis
Instalación de rbenv, ruby-build y 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
# confirm the install is correct
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
Instalar las dependencias de Ruby
gem update --system
gem install bundler mailcatcher rails
Clonar el código de Discourse
git clone https://github.com/discourse/discourse.git ~/discourse
cd ~/discourse
Instalar las dependencias de Discourse
bundle install
pnpm install
Crear las bases de datos necesarias y cargar el esquema
bundle exec rake db:create db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate
Probar la instalación ejecutando las pruebas
bundle exec rake autospec
Ejecutar la aplicación
bundle exec rails server
Ahora deberías poder ver la página de configuración de Discourse en http://localhost:3000.
Para más información sobre la configuración, consulta las guías de instalación oficiales existentes.
Este documento está bajo control de versiones - sugiere cambios en github.