Files
compose/supernote
2026-10-26 18:09:30 +00:00
..
2026-10-25 14:16:15 -07:00

Supernote Private Cloud

Copied from Supernote's official docker-compose.yml, with these changes:

  • Database init scripts are mounted. The official file doesn't mount anything into docker-entrypoint-initdb.d, so supernotedb.sql never loads into a new database. This file mounts:
    • supernotedb.sql → 00-supernotedb.sql (the schema)
    • supernote-email-init.sql → 01-supernote-email-init.sql
  • SMTP settings are pre-loaded. supernote-email-init.sql fills in u_email_config. Registration and password-reset emails then work without a manual trip to the web UI's "Email Settings" dialog.
  • Database and Redis settings are inline. The official file loads supernote-service's DB_HOSTNAME, MYSQL_* and REDIS_* variables from a separate .dbenv file. Here they're set directly in the compose file, from the same .env that mariadb and redis use.

Notes

  • Init scripts only run once. They run only against an empty sndata/db_data. The playbook re-applies the SMTP settings with docker compose exec on every run, so changing them in Infisical still takes effect.
  • Image versions are pinned (mariadb:10.6.24, redis:7.4.7, notelib:6.9.3, supernote-service:26.06.04). To upgrade, change the tags here and push to stable.
  • Check Supernote's file when upgrading. Compare against the official file in case they've added services or variables.