Как мне установить Discourse в Ubuntu?

8

У меня есть запасная машина с Ubuntu, и я хотел бы установить на нее Discourse .

Как мне это сделать? Я использую Ubuntu 13.04.

Сет
источник
1
В инструкциях предполагается, что вам нужен vagrant для установки Ubuntu, и, по-видимому, он предназначен для людей, в основном использующих Windows или Mac, и которым будет полезна отдельная виртуальная машина для установки и игры с беседой. Если у Сета есть «машина Ubuntu, лежащая без дела» с уже установленным 13.04, он может просто клонировать репозиторий git и установить его локально.
roadmr
Кроме того, для нас полезно иметь инструкции, касающиеся Ubuntu, непосредственно на этом сайте. Надеюсь, кто-то сделал это.
Сет
Локальная настройка и ручная настройка описаны здесь: github.com/discourse/discourse/blob/master/docs/… . Однако это кажется немного сложным, у бродячей виртуальной машины уже есть все необходимые службы (pgsql, redis), уже настроенные заранее, поэтому с ними легче начать.
roadmr
@chaskes это не обязательно, как описано в моем втором комментарии, вы можете установить и настроить необходимые службы вручную. Похоже, использовать Vagrant проще.
roadmr

Ответы:

7

В инструкциях предполагается, что вам нужен vagrant для установки Ubuntu, и, по-видимому, он предназначен для людей, в основном использующих Windows или Mac, и которым будет полезна отдельная виртуальная машина для установки и игры с беседой. Если у Сета «машина Ubuntu валяется» с уже установленным 13.04, он может просто клонировать репозиторий git и установить его локально.

Настройка на месте и вручную описана здесь, на GitHub . Однако это кажется немного сложным, у бродячей виртуальной машины уже есть все необходимые службы (pgsql, redis), уже настроенные заранее, поэтому с ними легче начать.

Тем не менее, если вы чувствуете себя смелым, вы можете выполнить следующие шаги, чтобы установить и настроить вещи на локальном компьютере с Ubuntu.

Отказ от ответственности, то это сложная процедура , которая включает в себя множество подвижных частей, я тестировал эту процедуру на свежеустановленную 13.04 системы , но если что - то пойдет не так, вы должны быть готовы к дешифратору сообщений об ошибках и исправить положение. Вам должно быть удобно с:

  • Установка пакета Ubuntu.
  • Редактирование текстового файла.
  • Имея некоторые знания об использовании командной строки Postgres.
  • Будучи минимально знакомым с Ruby, Rails и rubygems.
  • Некоторый мерзавец не повредит, но он используется только для начальной фазы клонирования

Хорошо, здесь идет

Установите необходимые пакеты:

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

Создайте базу данных postgresql и предоставьте разрешения пользователю, который будет вести дискурс (я предполагаю, что он называется «john», он может / должен быть вашим именем пользователя):

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"
#This is a bit of postgresql magic to add the required hstore and pg_trgm extensions
sudo -u postgres psql discourse_development -c "create extension hstore; create extension pg_trgm"

Клонировать репозиторий:

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

Используйте Bundler для установки гемов и зависимостей ruby, включая rails:

bundle install

Здесь вы можете столкнуться с проблемами зависимости, так как для сборки собственных расширений могут потребоваться другие пакеты. Если на этом этапе вы получите желтый текст с ошибками, посмотрите на сообщения об ошибках, чтобы выяснить, какие пакеты устанавливать (с помощью apt-get).

Настройте данные базы данных (postgres и redis):

cp config/redis.yml.sample config/redis.yml
cp config/database.yml.sample config/database.yml
# Now edit config/database.yml and in the discourse_development section add
# username: john
# password: whatever
# Follow the format for the other entries (adapter:, database:)

Запустите миграцию, чтобы инициализировать базу данных, а затем запустите ее:

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

затем запустите веб-сервер разработки:

bundle exec rails s

Наконец, откройте браузер и подключитесь к локальному серверу разработчиков по адресу

http://localhost:3000
roadmr
источник
К сожалению, это не сработало для меня. Я получил ошибки со всеми командами связки. Похоже, что они вызваны изменениями в Дискурсе, так как вы опубликовали инструкции. Я могу попробовать еще раз, а я не могу .. Я дам вам знать, что происходит.
Сет
Ну, я очистил и попытался снова и следовал аналогичным инструкциям здесь: 2buntu.com/1332/install-discourse-on-ubuntu Я действительно не уверен, почему это сработало ..
Сет
Образ Vagrant является рекомендуемой настройкой для разработки, поскольку он позволяет вам запускать тесты с минимальными усилиями.
MikeyB
6

Облачное развертывание (с Juju)

Если у вас есть провайдер облачных вычислений и вы хотите пропустить много ручных прыжков, вы можете использовать очарование Juju !

После того, как вы успешно загрузили среду, выполните следующее:

juju deploy cs:~marcoceppi/discourse
juju deploy postgresql

Тогда создайте отношения

juju add-relation discourse postgresql:db-admin

Дискурс требует db-adminровного доступа, чтобы включить плагин hstore. Наконец, разоблачить дискурс:

juju expose discourse

Конфигурация и другие предостережения могут быть найдены в README . Эти параметры включают в себя настройку администраторов, где выбрать источник Discourse, закрепление версии и другие параметры настройки.

Отказ от ответственности, я автор этого очарования.

Марко Чеппи
источник
1
Мне этот ответ нравится больше, чем мой :) (Juju FTW). Единственное, что меня беспокоит, это то, что вы говорите: «Если у вас есть провайдер облачных вычислений», но ОП явно упоминает, что у него просто есть запасная машина с Ubuntu. Не могли бы вы предоставить или указать инструкции о том, как настроить этот одинокий компьютер в качестве поставщика услуг juju? (может быть, установить его в качестве местного поставщика, я сделал это с разной степенью успеха). Тогда это будет выглядеть как самый простой способ развернуть дискурс.
roadmr
5

Оголенный метал

Я только что закончил статью, описывающую этот точный процесс

В итоге вам необходимо:

  • Установите и настройте PostgreSQL
  • Установите Redis и Ruby 1.9.3+
  • Клонирование репозитория Git Discourse
  • Сделайте соответствующий конфиг. изменения
  • Запустить bundle exec rails server
Натан Осман
источник
Это устарело и пропускает много шагов.
Сэм Шафран
4

В самом проекте также есть документация по установке в Ubuntu с использованием Docker (это единственный официально поддерживаемый способ):

Для разработки вы можете использовать эту программу, которая представляет собой простую команду после установки Docker.

Хорхе Кастро
источник
Связанные инструкции являются официальной рекомендацией для развертывания производства. Если у вас есть какие-либо отзывы или предложения, пожалуйста, дайте нам знать!
MikeyB
0

В Bitnami у нас есть полностью установщики Linux для Discourse и виртуальных машин на основе Ubuntu, а также облачные образы для Amazon, Azure. Вы можете проверить это на странице Дискурса Битнами.

(Отказ от ответственности, я один из разработчиков Битнами :)

Даниэль Лопес
источник
0

Вы можете использовать Cloud 66 EasyDeploy

Облако 66 EasyDeploy

Это означает, что вы можете развернуть Discourse на AWS, DigitalOcean, Rackspace, Linode или Joyent с помощью пары щелчков мыши (и получить гораздо больше, например, резервных копий БД, масштабирования и мониторинга!)

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я работаю на Cloud 66.

Хаш
источник
1
Не могли бы вы дать некоторые инструкции для этого в своем ответе?
Сет
Эта услуга бесплатна?
Джокердино
Все, что вам нужно сделать, чтобы развернуть Discourse с Cloud 66, это зарегистрировать учетную запись на cloud66.com и использовать URL Git для создания нового стека. Весь процесс является мастером так должно быть очень прямо вперед , и вы можете найти общий Cloud 66 Stack помощь в help.cloud66.com/getting-started/your-first-stack.html
Хаш
Вы можете найти информацию о возможностях и ценах на www.cloud66.com
хаш