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.
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.
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 :
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
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.
Je viens de terminer un article décrivant ce processus exact
En résumé, vous devez :
bundle exec rails server
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.
Vous pouvez utiliser 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.
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.