version: '3' services: mywww: image: bunkerity/bunkerized-nginx restart: always depends_on: - mymoodle ports: - 80:8080 - 443:8443 # bunkerized-nginx runs as an unprivileged user with UID/GID 101 # don't forget to edit the permissions of the files and folders accordingly volumes: - ./letsencrypt:/etc/letsencrypt environment: - SERVER_NAME=www.example.com # replace with your domain - AUTO_LETS_ENCRYPT=yes - REDIRECT_HTTP_TO_HTTPS=yes - DISABLE_DEFAULT_SERVER=yes - MAX_CLIENT_SIZE=50m - SERVE_FILES=no - USE_PROXY_CACHE=yes - USE_CLIENT_CACHE=yes - USE_GZIP=yes - USE_REVERSE_PROXY=yes - REVERSE_PROXY_URL=/ - REVERSE_PROXY_HOST=https://mymoodle:8443 mymoodle: image: bitnami/moodle:latest restart: always volumes: - ./moodle-files:/bitnami/moodle - ./moodle-data:/bitnami/moodledata environment: - MOODLE_USERNAME=admin # replace with your moodle admin username - MOODLE_PASSWORD=password # replace with your moodle admin password - MOODLE_EMAIL=moodle@example.com # replace with your moodle admin email - MOODLE_SITE_NAME=My Moodle # replace with your moodle site name - MOODLE_DATABASE_HOST=mydb - MOODLE_DATABASE_NAME=moodle - MOODLE_DATABASE_USER=user - MOODLE_DATABASE_PASSWORD=db-user-pwd # replace with a stronger password (must match MYSQL_PASSWORD) depends_on: - mydb mydb: image: mariadb:10.5 restart: always volumes: - ./db-data:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=db-root-pwd # replace with a stronger password - MYSQL_DATABASE=moodle - MYSQL_USER=user - MYSQL_PASSWORD=db-user-pwd # replace with a stronger password (must match MOODLE_DATABASE_PASSWORD) - MARIADB_CHARACTER_SET=utf8mb4 - MARIADB_COLLATE=utf8mb4_unicode_ci