¿Cómo instalo Discourse en Ubuntu?

8

Tengo una máquina Ubuntu de repuesto y me gustaría instalar Discourse en ella.

¿Cómo hago esto? Estoy ejecutando Ubuntu 13.04.

Seth
fuente
1
Las instrucciones dan por sentado que necesita vagabundo para instalar Ubuntu, y aparentemente están dirigidas a personas que usan principalmente Windows o Mac y que se beneficiarían de una VM separada para instalar y jugar con el discurso. Si Seth tiene una "máquina ubuntu por ahí" con 13.04 ya instalada, puede simplemente clonar el repositorio de git y configurarlo localmente.
roadmr
Además, es útil para nosotros tener instrucciones relacionadas con Ubuntu directamente en este sitio. Con suerte, dado por alguien que ha hecho esto.
Seth
Aquí se documenta la configuración local y manual: github.com/discourse/discourse/blob/master/docs/… . Sin embargo, parece un poco complejo, la VM vagabunda tiene todos los servicios necesarios (pgsql, redis) ya preconfigurados, por lo que puede ser más fácil comenzar.
roadmr
@chaskes no es estrictamente necesario, como se describe en mi segundo comentario, puede instalar y configurar los servicios necesarios manualmente. Parece que usar Vagrant es más fácil.
roadmr

Respuestas:

7

Las instrucciones asumen que necesita vagabundo para instalar Ubuntu, y aparentemente están dirigidas a personas que usan principalmente Windows o Mac y que se beneficiarían de una VM separada para instalar y jugar con el discurso. Si Seth tiene una "máquina Ubuntu por ahí" con 13.04 ya instalada, puede simplemente clonar el repositorio de git y configurarlo localmente.

La configuración local y manual se documenta aquí en GitHub . Sin embargo, parece un poco complejo, la VM vagabunda tiene todos los servicios necesarios (pgsql, redis) ya preconfigurados, por lo que puede ser más fácil comenzar.

Dicho esto, si te sientes valiente, puedes seguir estos pasos para instalar y configurar cosas en tu máquina Ubuntu local.

Descargo de responsabilidad, es un procedimiento complejo que involucra muchas partes móviles, probé este procedimiento en un sistema 13.04 recién instalado, pero si las cosas salen mal, debe estar preparado para descifrar mensajes de error y arreglar las cosas. Deberías sentirte cómodo con:

  • Instalación del paquete de Ubuntu.
  • Edición de archivos de texto.
  • Tener algún conocimiento del uso de la línea de comandos de Postgres.
  • Estar mínimamente familiarizado con Ruby, Rails y rubygems.
  • Algunos git no duelen, pero solo se usan para la fase inicial de clonación

OK, aquí va

Instalar paquetes necesarios:

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

Cree una base de datos postgresql y otorgue permisos al usuario que va a ejecutar el discurso (supongo que se llama "john", podría / debería ser su nombre de usuario):

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"

Clonar el repositorio:

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

Use Bundler para instalar gemas de rubí y dependencias, incluidos rieles:

bundle install

Aquí puede encontrar problemas de dependencia, ya que pueden ser necesarios otros paquetes para construir extensiones nativas. Si obtiene texto amarillo con errores en este paso, mire los mensajes de error para averiguar qué paquetes instalar (con apt-get).

Configure los datos de la base de datos (postgres y 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:)

Ejecute las migraciones para inicializar la base de datos, luego siembra:

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

luego inicie el servidor web de desarrollo:

bundle exec rails s

Finalmente, abra su navegador y conéctese al servidor de desarrollo local en

http://localhost:3000
roadmr
fuente
Lamentablemente esto no funcionó para mí. Recibí errores con todos los comandos del paquete. Parecen ser causados ​​por cambios en el discurso desde que publicó las instrucciones. Puedo intentarlo de nuevo, y puede que no ... Te haré saber lo que sucede.
Seth
Bueno, me purgué e intenté de nuevo y seguí las instrucciones similares aquí: 2buntu.com/1332/installing-discourse-on-ubuntu Realmente no estoy seguro de por qué funcionaron ...
Seth
La imagen Vagrant es la configuración recomendada para el desarrollo, ya que lo pone en marcha y ejecuta pruebas con un mínimo esfuerzo.
MikeyB
6

Despliegue en la nube (con Juju)

Si tienes un proveedor de servicios en la nube y quieres saltarte muchos saltos manuales, ¡puedes usar el amuleto de Juju !

Una vez que haya arrancado correctamente un entorno, ejecute lo siguiente:

juju deploy cs:~marcoceppi/discourse
juju deploy postgresql

Luego crea relaciones

juju add-relation discourse postgresql:db-admin

El discurso requiere db-adminacceso de nivel para habilitar el complemento hstore. Finalmente, exponga el discurso:

juju expose discourse

La configuración y otras advertencias se pueden encontrar en el archivo README del encanto . Estas opciones incluyen la configuración de administradores, dónde buscar la fuente del Discurso, la fijación de versiones y otras opciones de ajuste.

Descargo de responsabilidad, soy el autor de este encanto.

Marco Ceppi
fuente
1
De hecho, me gusta esta respuesta mejor que la mía :) (Juju FTW). Mi única preocupación sería, usted dice "si tiene un proveedor en la nube", pero el OP claramente menciona que solo tiene una máquina Ubuntu de repuesto por ahí. ¿Tal vez podría proporcionar o señalar instrucciones sobre cómo configurar esta máquina solitaria como proveedor de juju? (tal vez configurarlo como un proveedor local, lo he hecho con diversos grados de éxito). Entonces esta sería la forma más fácil de desplegar el discurso.
roadmr
5

Metal básico

Acabo de completar un artículo que describe este proceso exacto

En resumen, necesita:

  • Instalar y configurar PostgreSQL
  • Instalar Redis y Ruby 1.9.3+
  • Clonar el repositorio Git Discurso
  • Realice la configuración adecuada. cambios
  • correr bundle exec rails server
Nathan Osman
fuente
Esto está desactualizado y le faltan muchos pasos.
Sam Saffron
4

El proyecto en sí también tiene documentación sobre cómo instalar en Ubuntu usando Docker (que es la única forma oficialmente compatible):

Para el desarrollo, puede usar este programa, que es un simple comando simple después de instalar Docker.

Jorge Castro
fuente
Las instrucciones vinculadas son la recomendación oficial para implementaciones de producción. Si tiene algún comentario o sugerencia, ¡háganoslo saber!
MikeyB
0

En Bitnami tenemos instaladores completamente de Linux para Discourse y máquinas virtuales basadas en Ubuntu e imágenes en la nube para Amazon, Azure. Puedes verlo en el página del discurso de Bitnami

(Descargo de responsabilidad, soy uno de los desarrolladores de Bitnami :)

Daniel Lopez
fuente
0

Puedes usar Cloud 66 EasyDeploy

Cloud 66 EasyDeploy

Lo que significa que puede implementar Discourse en AWS, DigitalOcean, Rackspace, Linode o Joyent con un par de clics (¡y obtener muchas más copias de seguridad de DB, escalado y monitoreo también!)

DESCARGO DE RESPONSABILIDAD: Trabajo para Cloud 66.

Khash
fuente
1
¿Podría proporcionar algunas instrucciones para hacer esto en su respuesta?
Seth
¿Es este servicio gratuito?
jokerdino
Todo lo que necesita hacer para implementar Discourse con Cloud 66 es registrarse para obtener una cuenta en cloud66.com y usar la URL de Git para crear una nueva pila. Todo el proceso es un asistente, por lo que debe ser muy sencillo y puede encontrar ayuda general de Cloud 66 Stack en help.cloud66.com/getting-started/your-first-stack.html
Khash
Puede encontrar información sobre características y precios en www.cloud66.com
Khash