docker: fix compose self-hosting and add external Mongo/MinIO/Garage examples (#106)

* docker: update .env and docker-compose.yml for SMTP and new services

* docker: add external MinIO, MongoDB, and GarageHQ examples with setup instructions

* docs: update README with dotenv docker setup instructions and configuration redirect for external services

* docker: update service dependency condition for setup-themes in docker-compose.yml

* chore: update example URLs in .env for public services
This commit is contained in:
Ibaraki Douji
2026-07-29 09:07:52 +05:00
committed by GitHub
parent 7ce7f02646
commit 3c7327d3c7
20 changed files with 663 additions and 18 deletions
+31 -9
View File
@@ -12,21 +12,26 @@ NOTESNOOK_API_SECRET=
# Possible values: true/false
DISABLE_SIGNUPS=false
### SMTP Configuration ###
# SMTP Configuration is required for sending emails for password reset, 2FA emails etc. You can get SMTP settings from your email provider.
### SMTP Configuration (optional) ###
# ================================================================================
# WARNING: If SMTP is not configured, email 2FA and password-reset emails will
# NOT work. Newly created users MUST change 2FA to an Authenticator app:
# Settings > Auth > Change 2FA method
# ================================================================================
# SMTP is used for sending emails for password reset, 2FA emails etc. You can get SMTP settings from your email provider.
# Description: Username for the SMTP connection (most time it is the email address of your account). Check your email provider's documentation to get the appropriate value.
# Required: yes
# Required: no
SMTP_USERNAME=
# Description: Password for the SMTP connection. Check your email provider's documentation to get the appropriate value.
# Required: yes
# Required: no
SMTP_PASSWORD=
# Description: Host on which the the SMTP connection is running. Check your email provider's documentation to get the appropriate value.
# Required: yes
# Required: no
# Example: smtp.gmail.com
SMTP_HOST=
# Description: Port on which the the SMTP connection is running. Check your email provider's documentation to get the appropriate value.
# Required: yes
# Required: no
# Example: 465
SMTP_PORT=
@@ -42,6 +47,7 @@ TWILIO_AUTH_TOKEN=
TWILIO_SERVICE_SID=
# Description: Add the origins for which you want to allow CORS. Leave it empty to allow all origins to access your server. If you want to allow multiple origins, seperate each origin with a comma.
# Note: this value is passed to the server as NOTESNOOK_CORS internally.
# Required: no
# Example: https://app.notesnook.com,http://localhost:3000
NOTESNOOK_CORS_ORIGINS=
@@ -58,16 +64,20 @@ KNOWN_PROXIES=
NOTESNOOK_APP_PUBLIC_URL=https://app.notesnook.com
# Description: This is the public URL for the monograph frontend.
# Required: yes
# Example: https://monogr.ph
# Example: https://monogr.yourdomain.com
MONOGRAPH_PUBLIC_URL=http://localhost:6264
# Description: This is the public URL for the Authentication server. Used for generating email confirmation & password reset URLs.
# Required: yes
# Example: https://auth.streetwriters.co
# Example: https://auth.yourdomain.com
AUTH_SERVER_PUBLIC_URL=http://localhost:8264
# Description: This is the public URL for the S3 attachments server (minio). It'll be used by the Notesnook clients for uploading/downloading attachments.
# Required: yes
# Example: https://attachments.notesnook.com
# Example: https://attachments.yourdomain.com
ATTACHMENTS_SERVER_PUBLIC_URL=http://localhost:9000
# Description: This is the public URL for the Notesnook sync API (browser-reachable; used by Monograph).
# Required: yes
# Example: https://api.yourdomain.com
NOTESNOOK_API_PUBLIC_URL=http://localhost:5264
# Description: Custom username for the root Minio account. Minio is used for storing your attachments. This must be greater than 3 characters in length.
# Required: no
@@ -75,3 +85,15 @@ MINIO_ROOT_USER=
# Description: Custom password for the root Minio account. Minio is used for storing your attachments. This must be greater than 8 characters in length.
# Required: no
MINIO_ROOT_PASSWORD=
# Optional: only needed when using `docker compose --profile extras up`
# Description: Public URL for the CORS proxy service
CORS_PROXY_PUBLIC_URL=http://localhost:3001
# Description: Allowed origins for the CORS proxy (* for all origins)
CORS_PROXY_ALLOWED_ORIGINS=*
# Description: Public URL for the Inbox API service
INBOX_API_PUBLIC_URL=http://localhost:5181
# Description: Public URL for the Themes server
THEMES_SERVER_PUBLIC_URL=http://localhost:9200
# Description: Git repository URL for the Themes server
THEMES_REPO_URL=https://github.com/streetwriters/notesnook-themes.git