Como instalo o Discourse no Ubuntu?


8

Eu tenho uma máquina Ubuntu disponível e gostaria de instalar o Discourse nela.

Como eu faço isso? Estou executando o Ubuntu 13.04.


1
As instruções assumem que você precisa vagar para instalar o Ubuntu e aparentemente são voltadas para pessoas que usam principalmente o Windows ou Mac e que se beneficiariam de uma VM separada para instalar e brincar com o discurso. Se Seth tem uma "máquina ubuntu por aí" com o 13.04 já instalada, ele pode simplesmente clonar o repositório git e configurá-lo localmente.
roadmr

Além disso, é útil termos instruções referentes ao Ubuntu diretamente neste site. Espero que seja dado por alguém que tenha feito isso.
Seth

A configuração local e manual das coisas está documentada aqui: github.com/discourse/discourse/blob/master/docs/… . No entanto, parece um pouco complexo, a VM vagrant possui todos os serviços necessários (pgsql, redis) já pré-configurados, por isso pode ser mais fácil começar.
roadmr

@chaskes não é estritamente necessário, conforme descrito no meu segundo comentário, você pode instalar e configurar os serviços necessários manualmente. Parece que usar o Vagrant é mais fácil.
roadmr

Respostas:


7

As instruções pressupõem que você precisa vagar para instalar o Ubuntu e aparentemente são voltadas para pessoas que usam principalmente o Windows ou Mac e que se beneficiariam de uma VM separada para instalar e brincar com o discurso. Se Seth tiver uma "máquina Ubuntu por aí" com o 13.04 já instalada, ele poderá clonar o repositório git e configurá-lo localmente.

A configuração local e manual das coisas está documentada aqui no GitHub . No entanto, parece um pouco complexo, a VM vagrant possui todos os serviços necessários (pgsql, redis) já pré-configurados, por isso pode ser mais fácil começar.

Dito isto, se você estiver se sentindo corajoso, siga estas etapas para instalar e configurar as coisas na sua máquina Ubuntu local.

Isenção de responsabilidade, é um procedimento complexo que envolve muitas partes móveis; testei esse procedimento em um sistema 13.04 recém-instalado; Você deve se sentir confortável com:

  • Instalação do pacote Ubuntu.
  • Edição de arquivo de texto.
  • Ter algum conhecimento do uso da linha de comando do Postgres.
  • Estar minimamente familiarizado com Ruby, Rails e rubygems.
  • Algum git não dói, mas é usado apenas na fase inicial de clonagem

OK, aqui vai

Instale os pacotes necessários:

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

Criar um banco de dados PostgreSQL e conceder permissões para o usuário que está indo para executar discurso (eu vou assumir que é chamado "João", que poderia / deveria ser o seu nome de usuário):

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"

Clone o repositório:

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

Use o Bundler para instalar rubis e dependências, incluindo trilhos:

bundle install

Você pode encontrar problemas de dependência aqui, pois outros pacotes podem ser necessários para criar extensões nativas. Se você receber texto amarelo com erros nesta etapa, observe as mensagens de erro para descobrir quais pacotes instalar (com o apt-get).

Configure os dados do banco de dados (postgres e 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:)

Execute as migrações para inicializar o banco de dados e propague-o:

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

em seguida, inicie o servidor da web de desenvolvimento:

bundle exec rails s

Por fim, abra o navegador e conecte-se ao servidor de desenvolvimento local em

http://localhost:3000

Infelizmente isso não funcionou para mim. Eu tenho erros com todos os comandos do pacote. Eles parecem ser causados ​​por alterações no Discourse desde que você postou as instruções. Eu posso tentar novamente, e eu não posso. Vou deixar você saber o que acontece.
Seth

Bem, eu purgado e tentou novamente e seguiu as instruções semelhantes aqui: 2buntu.com/1332/installing-discourse-on-ubuntu Estou realmente não tenho certeza por que aqueles trabalhou ..
Seth

A imagem do Vagrant é a configuração recomendada para o desenvolvimento, pois permite que você execute os testes com o mínimo esforço.
MikeyB

6

Implantação na nuvem (com Juju)

Se você possui um provedor de nuvem e deseja pular muitas voltas manuais, pode usar o charme Juju !

Depois de inicializar com êxito um ambiente, execute o seguinte:

juju deploy cs:~marcoceppi/discourse
juju deploy postgresql

Então crie relações

juju add-relation discourse postgresql:db-admin

O discurso requer db-adminacesso de nível para ativar o plugin hstore. Por fim, exponha o discurso:

juju expose discourse

A configuração e outras advertências podem ser encontradas no README do encanto . Essas opções incluem a configuração de administradores, onde buscar a fonte do Discourse, a fixação da versão e outras opções de ajuste.

Disclaimer, eu sou o autor deste encanto.


1
Na verdade, eu gosto mais dessa resposta que a minha :) (Juju FTW). Minha única preocupação seria: você está dizendo "se você tem um provedor de nuvem", mas o OP menciona claramente que ele tem uma máquina Ubuntu disponível por aí. Você poderia talvez fornecer, ou apontar para, instruções sobre como configurar esta máquina solitária como um provedor juju? (talvez configurá-lo como um provedor local, eu fiz isso com vários graus de sucesso). Então, essa seria a maneira mais fácil de implementar o discurso.
roadmr

5

Metal desencapado

Acabei de concluir um artigo que descreve esse processo exato

Em resumo, você precisa:

  • Instale e configure o PostgreSQL
  • Instale o Redis e Ruby 1.9.3+
  • Clonar o repositório Discourse Git
  • Faça a configuração apropriada. alterar
  • Corre bundle exec rails server

Isso está desatualizado e faltam muitas etapas.
Sam Saffron

4

O projeto em si também possui documentação sobre como instalar no Ubuntu usando o Docker (que é a única maneira oficialmente suportada):

Para o desenvolvimento, você pode usar este programa, que é um comando simples e simples depois de instalar o Docker.


As instruções vinculadas são a recomendação oficial para implantações de produção. Se você tiver algum comentário ou sugestão, informe-nos!
MikeyB

0

Na Bitnami, temos instaladores completamente Linux para máquinas virtuais baseadas em Discourse e Ubuntu e imagens em nuvem para Amazon, Azure. Você pode conferir na página do Discurso Bitnami

(Isenção de responsabilidade, eu sou um dos desenvolvedores do Bitnami :)


0

Você pode usar o Cloud 66 EasyDeploy

Cloud 66 EasyDeploy

O que significa que você pode implantar o Discourse na AWS, DigitalOcean, Rackspace, Linode ou Joyent com apenas alguns cliques (e obter muito mais como backups de banco de dados, dimensionamento e monitoramento também!)

AVISO LEGAL: Eu trabalho para o Cloud 66.


1
Você poderia fornecer algumas instruções para fazer isso em sua resposta?
Seth

Este serviço é gratuito?
jokerdino

Tudo o que você precisa para implantar o Discourse with Cloud 66 é se inscrever em uma conta no cloud66.com e usar o URL do Git para criar uma nova pilha. Todo o processo é um assistente, portanto, deve ser bem direto e você pode encontrar a ajuda geral do Cloud 66 Stack em help.cloud66.com/getting-started/your-first-stack.html #
Khash

Você pode encontrar informações sobre recursos e preços em www.cloud66.com
Khash
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.