digitaldemocratic/README.md

6.5 KiB

English - Català

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.

make 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).

Settings

Copy digitaldemocratic.conf.example to digitaldemocratic.conf and edit to suit your needs. At least (for development) you need to adapt the DOMAIN variable to your root domain.

  • PRODUCTION: You need a multidomain dns (or redirect the multiple subdomains) to your host machine.
  • DEVELOPMENT: You can just edit your /etc/hosts and add all of them there just for testing purposes.

Subdomains

  • Keycloak: sso.<yourdomain.org>
  • FreeIPA: ipa.<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>

Personalization

Copy recursively the custom.sample folder to custom and edit the custom/menu yaml files and replace images.

Bring the project up

make all

Integration

Please read the SAML_README.md in isard-sso/docs folder to integrate all apps. Now nextcloud and wordpress should be automatically integrated with keycloak after finishing the make all but moodle needs some manual steps yet.

License

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

Credits

Pilot project of the Democratic Digitalization Plan led by Xnet and promoting families. Software created by IsardVDI and 3iPunt in collaboration with MaadiX.net, Affac, Barcelona City Council and the Barcelona Education Consortium