# Supernote Private Cloud Copied from Supernote's official [docker-compose.yml](https://supernote-private-cloud.supernote.com/cloud/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.