8 votes

Comment installer Discourse sur Ubuntu ?

J'ai une machine Ubuntu en réserve qui traîne et j'aimerais installer Discourse dessus.

Comment puis-je faire cela? Je suis sous Ubuntu 13.04.

7voto

roadmr Points 32606

Les instructions supposent que vous avez besoin de Vagrant pour installer Ubuntu, et sont apparemment destinées principalement aux personnes utilisant principalement Windows ou Mac et qui bénéficieraient d'une machine virtuelle séparée pour installer et jouer avec Discourse. Si Seth a une "machine Ubuntu qui traîne" avec la version 13.04 déjà installée, il peut simplement cloner le dépôt git et le configurer localement.

La configuration locale manuelle est documentée ici sur GitHub. Cependant, cela semble un peu complexe, la machine virtuelle Vagrant a tous les services nécessaires (pgsql, redis) déjà préconfigurés, il peut donc être plus facile de commencer.

Cela dit, si vous vous sentez courageux, vous pouvez suivre ces étapes pour installer et configurer les choses sur votre machine Ubuntu locale.

Avertissement, il s'agit d'une procédure complexe impliquant de nombreuses pièces mobiles, j'ai testé cette procédure sur un système fraîchement installé sous 13.04, mais si quelque chose ne va pas, vous devez être prêt à déchiffrer les messages d'erreur et à corriger les problèmes. Vous devrez être à l'aise avec :

  • Installation de paquets Ubuntu.
  • Édition de fichiers texte.
  • Avoir une certaine connaissance de l'usage en ligne de commande de Postgres.
  • Être un minimum familier avec Ruby, Rails et rubygems.
  • Un peu de git ne fait pas de mal, mais il n'est utilisé que pour la phase de clonage initial.

OK, on y va

Installer les paquets nécessaires :

sudo apt-get install git ruby ruby-bundler build-essential libxml2-dev libxslt1-dev redis-server postgresql libpq-dev postgresql-contrib-9.1

Créer une base de données postgresql et accorder des autorisations à l'utilisateur qui va exécuter Discourse (je vais supposer que son nom est "john", cela pourrait/devrait être votre nom d'utilisateur) :

sudo -u postgres createdb discourse_development
sudo -u postgres psql -c "create user john with password 'whatever' "
sudo -u postgres psql -c "grant all privileges on database discourse_development to john"
# Il s'agit d'un peu de magie postgresql pour ajouter les extensions hstore et pg_trgm requises
sudo -u postgres psql discourse_development -c "create extension hstore; create extension pg_trgm"

Cloner le dépôt :

git clone https://github.com/discourse/discourse
cd discourse

Utiliser Bundler pour installer les gemmes Ruby et les dépendances, y compris rails :

bundle install

Vous pouvez rencontrer des problèmes de dépendances ici, d'autres paquets peuvent être nécessaires pour construire des extensions natives. Si vous obtenez du texte jaune avec des erreurs à cette étape, regardez les messages d'erreur pour savoir quels paquets installer (avec apt-get).

Configurer les données de la base de données (postgres et redis) :

cp config/redis.yml.sample config/redis.yml
cp config/database.yml.sample config/database.yml
# Maintenant éditez config/database.yml et dans la section discourse_development ajoutez
# username: john
# password: whatever
# Suivez le format des autres entrées (adapter:, database:)

Exécuter les migrations pour initialiser la base de données, puis la peupler :

bundle exec rake db:migrate
bundle exec rake db:seed_fu
sudo -u postgres psql discourse_development < pg_dumps/production-image.sql

puis lancez le serveur web de développement :

bundle exec rails s

Enfin, ouvrez votre navigateur et connectez-vous au serveur de développement local à

http://localhost:3000

6voto

Redbaron Points 523

Déploiement Cloud (avec Juju)

Si vous disposez d'un fournisseur de cloud et que vous souhaitez éviter un grand nombre de sauts manuels, vous pouvez utiliser le charme Juju !

Après avoir initialisé avec succès un environnement, exécutez ce qui suit :

juju deploy cs:~marcoceppi/discours
juju deploy postgresql

Ensuite créez les relations :

juju add-relation discours postgresql:db-admin

Discours nécessite un accès de niveau db-admin pour activer le plugin hstore. Enfin, exposez Discours :

juju expose discours

La configuration et autres avertissements se trouvent dans le README du Charm. Ces options incluent la configuration des administrateurs, l'endroit où récupérer la source de Discourse, l'épinglage de version et d'autres options de réglage.

Disclaimer, je suis l'auteur de ce charme.

5voto

Jon Galloway Points 28243

Métal nu

Je viens de terminer un article décrivant ce processus exact

En résumé, vous devez :

  • Installer et configurer PostgreSQL
  • Installer Redis et Ruby 1.9.3+
  • Cloner le dépôt Git de Discourse
  • Effectuer les changements de configuration appropriés
  • Exécuter bundle exec rails server

4voto

Joshua McKinnon Points 12379

Le projet lui-même possède également une documentation sur comment installer sur Ubuntu en utilisant Docker (qui est la seule méthode officiellement supportée) :

Pour le développement, vous pouvez utiliser ce programme qui est une simple commande unique après avoir installé Docker.

0voto

Khash Points 117

Vous pouvez utiliser Cloud 66 EasyDeploy

Cloud 66 EasyDeploy

Cela signifie que vous pouvez déployer Discourse sur AWS, DigitalOcean, Rackspace, Linode ou Joyent en quelques clics (et obtenir bien plus comme des sauvegardes de base de données, mise à l'échelle et surveillance également!)

AVERTISSEMENT : je travaille pour Cloud 66.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X