digitaldemocratic/README.md

6.8 KiB
Raw Blame History

English - Català

Llicència

AGPLv3 (https://www.gnu.org/licenses/agpl-3.0.en.html)

Crèdits

Projecte pilot del Pla de Digitalització Democràtica dirigit per Xnet i famílies promotores. Programari creat per IsardVDI i 3iPunt amb la col·laboració de MaadiX.net, Affac, lAjuntament de Barcelona y el Consorci d'Educació de Barcelona

Què és això

Aquest projecte permet facilitar un proveïdor d'identitat complet i moltes aplicacions per tenir un entorn pensat per a escoles i universitats. El projecte proporcionarà una solució integrada per a gestionar l'entorn comú en l'educació:

  • Aules: Una instància de Moodle amb tema personalitzat i connectors personalitzats.
  • Fitxers: Una instància del Nextcloud amb tema personalitzat i connectors personalitzats.
  • Documents: Una instància d'OnlyOffice integrada amb nextcloud.
  • Pàgines web: Una instància de pressió de paraules amb el tema personalitzat i connectors personalitzats.
  • Pad: Una instància etherpad integrada amb nextcloud.
  • Conferències: Un BigBlueButton integrat amb moodle i nextcloud. Necessita un servidor independent.
  • Formularis: Els connectors del nextcloud dels formularis.
  • ... (algunes aplicacions com jitsi o BigBlueButton no estan totalment integrades ara mateix)

Interfície d'administració

Ara hi ha una interfície d'administració que permet gestionar fàcilment usuaris i grups i mantenir-los sincronitzats entre aplicacions. Això es fa executant accions sobre les apis de les diferents aplicacions.

Per migrar i introduïr fàcilment usuaris i grups al sistema també hi ha dues importacions::

  • Des de la consola d'administració de Google en format JSON
  • Des d'un fitxer CSV

Aquesta interfície d'administració està en estat alfa, però ja permet gestionar usuaris sincronitzats entre keycloak, moodle i nextcloud.

Estat del projecte

Funcional, però hi seguim treballant i tindrà moltes millores en els pròxims mesos. Cal fer algunes automatitzacions, especialment amb la integració de SAML a Moodle i Keycloak.

La vostra col·laboració és benvinguda! Podeu fer un fork del projecte per a desenvolupar o bé obrir-nos incidències en aquest repositori.

Documentació DigitalDemocratic

Està escrita en markdown utilitzant MkDocs+Gitlab.

Mire al directori docs els fitxers Markdown o bé a auto-built site.

Inici ràpid

cp digitaldemocratic.conf.sample digitaldemocratic.conf

Canvia les contrasenyes per defecte

./securize_conf.sh

Editeu les variables de fitxer digitaldemocratic.conf per satisfer les vostres necessitats.

cp -R custom.sample custom

Edita i substitueix els fitxers per personalitzar el sistema.

La primera vegada executa:

./dd-ctl update-repo

I després:

./dd-ctl all

NOTA: L'autenticació SAML actualment es troba automatitzada:

  • Moodle: No completament automatitzat.

    1. Inicieu la sessió a moodle com a administrador via: https://moodle.<domain>/login/index.php?saml=off
    2. Aneu a la configuració d'autenticació: https://moodle.<domain>/admin/settings.php?section=manageauths
    3. Activa SAML2 fent clic a l'ull.
    4. Clic a configuració* a SAML2
    5. Feu clic al botó Regenera el certificat* dins del formulari. Després d'això, torna a la pàgina de configuració de SAML2.
    6. Feu clic al botó Bloqueja el certificat*.
    7. Al terminal executeu l'script per autoconfigure: acoblador exec isard-sso-admin python3 moodle_saml.py
    8. L'última cosa és purgar la memòria cau de moodle: ]]femida l'script php-fpm7 de l'acoblador Exec, feu-ho a través de moodle ui]]
  • Nextcloud: automatitzada. Després d'acabar el make all hauria d'estar llest. En cas que falla es refereix a isard-sso/docs.

  • Wordpress: Pràcticament automatitzat. Després d'acabar el make all hauria d'estar llest i només caldrà activar el plugin. En cas que falla es refereix a isard-sso/docs.

Instal.lació estesa

Podeu iniciar aquest projecte en qualsevol servidor amb docker & docker-compose (qualsevol sistema operatiu hauria de funcionar). Per a instal·lar aquests paquets a la vostra distribució, consulteu el funcionament de docker-compose a la documentació oficial i a la carpeta sysadm teniu alguns scripts d'automatització

Qualsevol distribució hauria de funcionar però, si voleu utilitzar els nostres scripts sysadm per instal·lar docker & docker-compose , utilitzeu Debian Buster (10).

Clonar els submòduls

git clone https://gitlab.com/digitaldemocratic/digitaldemocratic/
cd digitaldemocratic
git submodule update --init --recursive

docker

Referiu-vos a la documentació oficial (https://docs.docker.com/engine/install/) o utilitzeu l'script a la carpeta sysadm per a Debian Buster (10).

docker-compose

Referiu-vos a la documentació oficial (https://docs.docker.com/compose/install/) o utilitzeu l'script a la carpeta sysadm per a Debian Buster (10).

Configuració

Copieu digitaldemocratic.conf.exemple a digitaldemocratic.conf i editeu-lo per satisfer les vostres necessitats. Com a mínim (per a desenvolupament) heu d'adaptar la variable de DOMINI al vostre domini arrel.

  • PRODUCCIÓ: Necessiteu un dns multidomini (o redirigeix els subdominis múltiples) a la vostra màquina d'amfitrió.
  • Desenvolupament: Editeu el fitxer /etc/hosts i afegiu els subdominis per a propòsits de proves locals.

Subdominis

  • Keycloak: sso.<yourdomain.org>
  • Api: api.<yourdomain.org>
  • Moodle: moodle.<yourdomain.org>
  • Nextcloud: nextcloud.<yourdomain.org>
  • Wordpress: wp.<yourdomain.org>
  • Onlyoffice: oof.<yourdomain.org>
  • Etherpad: pad.<yourdomain.org>
  • (opcional) FreeIPA: ipa.<yourdomain.org>

Personalització

Copia recursivament la carpeta custom.sample a custom i edita els fitxers yaml de personalització i menú i substitueix les imatges.

Iniciar el projecte

La primera vegada (i si voleu actualitzar a la última versió posteriorment) executeu:

./dd-ctl update-repo

I després

./dd-ctl all

Posteriorment podreu iniciar o aturar amb:

./dd-ctl down
./dd-ctl up

Integració

Llegiu el fitxer SAML_README.md a la carpeta isard-sso/docs per integrar totes les aplicacions. Ara el Nextcloud i el Wordpress s'haurien d'integrar automàticament amb el Keycloak.