Implementering av Moodle med Docker

Denne veiledningen tar deg gjennom stegene for å sette opp Moodle på Ubuntu med Docker, og sørger for at alle nødvendige tjenester fungerer som de skal.

Implementering

2.1 Opprett docker-compose.yml

I forrige trinn opprettet du en prosjektmappe og en .env-fil. Nå skal vi opprette en docker-compose.yml-fil som definerer tjenestene som trengs for å kjøre Moodle.

nano docker-compose.yml

Lim inn følgende konfigurasjon i filen:

version: '3.8'

services:
  moodle:
    image: bitnami/moodle:latest
    ports:
      - '80:8080'
      - '443:8443'
    depends_on:
      - mariadb
    environment:
      - MOODLE_DATABASE_TYPE=mariadb
      - MOODLE_DATABASE_HOST=mariadb
      - MOODLE_DATABASE_PORT_NUMBER=3306
      - MOODLE_DATABASE_NAME=bitnami_moodle
      - MOODLE_DATABASE_USER=bn_moodle
      - MOODLE_DATABASE_PASSWORD=${MOODLE_DATABASE_PASSWORD}
    volumes:
      - moodle_data:/bitnami/moodle
      - moodle_logs:/bitnami/apache
    restart: unless-stopped

  mariadb:
    image: bitnami/mariadb:latest
    environment:
      - MARIADB_ROOT_PASSWORD=${MOODLE_DATABASE_ROOT_PASSWORD}
      - MARIADB_DATABASE=bitnami_moodle
      - MARIADB_USER=bn_moodle
      - MARIADB_PASSWORD=${MOODLE_DATABASE_PASSWORD}
    volumes:
      - mariadb_data:/bitnami/mariadb
    restart: unless-stopped

volumes:
  moodle_data:
  moodle_logs:
  mariadb_data:

Lagre og lukk filen (Ctrl+O, Enter, Ctrl+X).

2.2 Start Docker-tjenestene

Nå kan vi starte Moodle og MariaDB-tjenestene ved hjelp av Docker Compose:

docker-compose up -d

Denne kommandoen laster ned nødvendige Docker-bilder og starter tjenestene i bakgrunnen.

2.3 Verifiser at tjenestene kjører

Sjekk statusen til tjenestene:

docker-compose ps

Du bør se at både moodle og mariadb tjenestene kjører.

2.4 Tilgang til Moodle

Åpne en nettleser og naviger til serverens IP-adresse for å få tilgang til Moodle:

http://[server-ip]

Du bør se Moodle-installasjonssiden.

2.5 Fullfør Moodle-oppsettet

Følg installasjonsveiviseren i nettleseren for å fullføre oppsettet av Moodle.

  1. Velg ønsket språk og klikk "Neste".
  2. Bekreft nettadressen, rotmappen og datarot. De bør allerede være korrekt fylt ut.
  3. Velg databasesjåfør: "Improved MySQL (native/mysqli)".
  4. Angi databaseinnstillinger:
    • Databasenavn: bitnami_moodle
    • Brukernavn: bn_moodle
    • Passord: Passordet du satte i .env-filen (MOODLE_DATABASE_PASSWORD)
    • Databasevert: mariadb
    • Port: 3306
    • Tabelprefiks: mdl_
  5. Fortsett gjennom installasjonsprosessen, aksepter lisensavtalen og vent mens Moodle installeres.
  6. Opprett en admin-bruker og konfigurer nettstedets innstillinger.

2.6 Feilsøking av config.php

Hvis du opplever at config.php ikke blir generert automatisk, kan du manuelt opprette den ved å kopiere config-dist.php til config.php:

docker exec -it moodle bash

Dette vil logge deg inn i Moodle-containeren.

Kjør deretter:

cp /bitnami/moodle/config-dist.php /bitnami/moodle/config.php

Rediger config.php og sett inn de nødvendige databaseinnstillingene. Du kan bruke en teksteditor som nano eller vi:

nano /bitnami/moodle/config.php

Etter redigering, lagre filen og avslutt containeren ved å skrive exit.

2.7 Åpne nødvendige porter i brannmuren

Sørg for at nødvendige porter er åpne i brannmuren:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

2.8 Oppdateringer og vedlikehold

For å oppdatere Moodle til den nyeste versjonen:

docker-compose down
docker-compose pull
docker-compose up -d

2.9 Stopp og start tjenestene på nytt

Hvis du trenger å stoppe tjenestene eller starte dem på nytt:

docker-compose down
docker-compose up -d

2.10 Feilsøking og støtte

Hvis du opplever problemer, kan du sjekke loggene:

docker-compose logs moodle
docker-compose logs mariadb

For ytterligere støtte, besøk: