
Cloud Services
Discord
Discord is our chat room program where members talk. Setup was complex, we utilize a number of bots for integrations, so Discord has a dedicated setup page: Setup Overview
Google Sheets
We track trips and calendar in a google sheet. Ask for access if you need it.
Google Calendar
We use gCal to advertise events to website viewers and allow members to add the calendar to theirs. Technically it’s publicly viewable so don’t put location data directly into calendar events. The socalgrottocalendar@gmail.com user and API key are managed by Dav.
Webserver
The server lives under Dav’s desk. We could probably pay for virtual hosting if it becomes a problem, but we currently don’t. The machine is a little long in the tooth but has more storage and cpu cores than the grotto could reasonably pay for at AWS.
- Linux 6.8.0-47-generic x86_64 GNU/Linux
- Ubuntu 24.04 “Noble”
- NGINX 1.24.0 (Ubuntu)
- PHP 8.3.6
- MariaDB 15.1 Distrib 10.11.0-MariaDB for debian-linux-gnu
WordPress
WordPress 6.8.1 (See plugin documentation)
Immich
Immich is our photo archive website. It runs on docker and has a nginx vhost map to https://photos.socalgrotto.com. The grotto currently utilizes two accounts. Dav also uses Immich for his own photos. We don’t have oauth2 setup yet for the grotto user so for the time being we just keep the login secret.
- “socalgrotto” (the main photo repo)
- “cavesely” (Carol’s map repo)
- “dangel” (Dav’s photos)
Network
- Domain: socalgrotto.com domain name is hosted at aws in dangel personal account
- Bern still has the old southerncaliforniagrotto.com domain.
- DNS: route53 dangel personal account
- Internet: Spectrum at dangel’s house. Tests at about 500Mb/20Mb
- Router: Firewalla 2.5g (QOS on)
- Switch: 2.5g something or another
- Intel PC running Linux. No VMs, Docker for zeppelin and various other services, but not wordpress.
Certbot
We use certbot and a r53 plugin to automatically update all certs for domains on the webhost. The process is run in cron occasionally.
Backups
- Entire internal disk is written to a ZFS mirrored vdev daily
- MySQL backups are currently sent to /tank/efap/backups/mysql twice a day
- Immich backups are currently sent to /tank/efap/backups/mysql once a dayl
- We need a .zip of the site and mysql to google drive or something offsite.
Stuff you should remember to do if you do this again:
- Setup QOS on your router so your torrent traffic doesn’t clobber users