D.1.4 Arquitectura
Es una aplicación javascript escrita con el framework Ember.js, con un backend escrito en Ruby on Rails para la persistencia de contenidos en la base de datos.
Cuenta con un instalador1 que facilita todo el proceso, a través de scripts que descargan y configuran imágenes docker para la instalación del sistema. Cuenta con un asistente de instalación en el que se preguntan las principales opciones.
/var/discourse$ sudo ./discourse-setup Ports 80 and 443 are free for use Found 3GB of memory and 2 physical CPU cores setting db_shared_buffers = 768MB setting UNICORN_WORKERS = 4 Hostname for your Discourse? [discourse.example.com]: Email address for admin account(s)? [[email protected],[email protected]]: SMTP server address? [smtp.example.com]: SMTP port? [587]: SMTP user name? [[email protected]]: SMTP password? [pa$$word]: Let's Encrypt account email? (ENTER to skip) [[email protected]]: Does this look right? Hostname : discourse.example.com Email : [email protected],[email protected] SMTP address : smtp.example.com SMTP port : 587 SMTP username : [email protected] SMTP password : pa$$word ENTER to continue, 'n' to try again, Ctrl+C to exit:
Los desarrolladores han optado por no incluir en el aplicativo un servidor SMTP para el envío de correo electrónico, debiéndose por tanto proveer ese servicio externamente.
Figura D.1.4.1: Esquema de arquitectura de Discourse
1. https://github.com/discourse/discourse_docker.git ↩