mirror of
https://github.com/rzmk/learnhouse.git
synced 2025-12-18 11:59:26 +00:00
feat: update environment variable placeholders and domain settings in documentation for Coolify deployments
This commit is contained in:
parent
c62df7a84f
commit
47535efec2
3 changed files with 70 additions and 54 deletions
|
|
@ -1,65 +1,79 @@
|
||||||
# Environment Variables for Coolify Deployments
|
# Environment Variables for Coolify Deployments
|
||||||
|
|
||||||
## DEV Environment (adr-lms.whitex.cloud)
|
> ⚠️ **SECURITY NOTE**: This file contains placeholder values only. Replace ALL `YOUR_*` placeholders with your actual secure values before deployment. Never commit actual secrets to version control.
|
||||||
|
|
||||||
|
## Placeholder Values to Replace:
|
||||||
|
- `YOUR_DEV_REDIS_PASSWORD` - Strong password for development Redis instance
|
||||||
|
- `YOUR_LIVE_REDIS_PASSWORD` - Strong password for production Redis instance
|
||||||
|
- `YOUR_DEV_DB_PASSWORD` - Strong password for development database
|
||||||
|
- `YOUR_LIVE_DB_PASSWORD` - Strong password for production database
|
||||||
|
- `YOUR_DEV_NEXTAUTH_SECRET` - Cryptographically secure random string for dev auth
|
||||||
|
- `YOUR_LIVE_NEXTAUTH_SECRET` - Cryptographically secure random string for production auth
|
||||||
|
- `YOUR_RESEND_API_KEY` - Your actual Resend API key for email delivery
|
||||||
|
- `your-dev-domain.com` - Your development domain name
|
||||||
|
- `your-prod-domain.com` - Your production domain name
|
||||||
|
- `contact@.com` - Your organization contact email
|
||||||
|
|
||||||
|
## DEV Environment
|
||||||
```
|
```
|
||||||
DEPLOYMENT_NAME=dev
|
DEPLOYMENT_NAME=dev
|
||||||
LEARNHOUSE_DOMAIN=adr-lms.whitex.cloud
|
LEARNHOUSE_DOMAIN=your-dev-domain.com
|
||||||
LEARNHOUSE_COOKIE_DOMAIN=adr-lms.whitex.cloud
|
LEARNHOUSE_COOKIE_DOMAIN=your-dev-domain.com
|
||||||
LEARNHOUSE_CONTACT_EMAIL=adr-lm@whitex.cloud
|
LEARNHOUSE_CONTACT_EMAIL=contact@.com
|
||||||
LEARNHOUSE_EMAIL_PROVIDER=resend
|
LEARNHOUSE_EMAIL_PROVIDER=resend
|
||||||
LEARNHOUSE_IS_AI_ENABLED=false
|
LEARNHOUSE_IS_AI_ENABLED=false
|
||||||
LEARNHOUSE_REDIS_CONNECTION_STRING=redis://default:CfhIfLu2c1VEEpGmhs80NUUvUMzyCq1lmzBZmFJDdrs@redis:6379/1
|
LEARNHOUSE_REDIS_CONNECTION_STRING=redis://default:YOUR_DEV_REDIS_PASSWORD@redis:6379/1
|
||||||
LEARNHOUSE_RESEND_API_KEY=re_LenY3zNh_S5ShneCyS3Pbf6HX75Yt8jet
|
LEARNHOUSE_RESEND_API_KEY=YOUR_RESEND_API_KEY
|
||||||
LEARNHOUSE_SELF_HOSTED=true
|
LEARNHOUSE_SELF_HOSTED=true
|
||||||
LEARNHOUSE_SITE_DESCRIPTION=ADR LMS is platform tailored for learning experiences.
|
LEARNHOUSE_SITE_DESCRIPTION=ADR LMS is platform tailored for learning experiences.
|
||||||
LEARNHOUSE_SITE_NAME=ADR LMS
|
LEARNHOUSE_SITE_NAME=ADR LMS
|
||||||
LEARNHOUSE_SQL_CONNECTION_STRING=postgresql://learnhouse_dev:Yvvxnnf1+qr6r+6d92NvbaXWeGuRqmsroFdildw9ez4@db:5432/learnhouse_dev
|
LEARNHOUSE_SQL_CONNECTION_STRING=postgresql://learnhouse_dev:YOUR_DEV_DB_PASSWORD@db:5432/learnhouse_dev
|
||||||
LEARNHOUSE_SSL=true
|
LEARNHOUSE_SSL=true
|
||||||
LEARNHOUSE_SYSTEM_EMAIL_ADDRESS=adr-lms@whitex.cloud
|
LEARNHOUSE_SYSTEM_EMAIL_ADDRESS=contact@.com
|
||||||
NEXTAUTH_SECRET=FokIexhXga0KpAF06a7ADqt0HIJf8n9XJeRptZctDG0
|
NEXTAUTH_SECRET=YOUR_DEV_NEXTAUTH_SECRET
|
||||||
NEXTAUTH_URL=https://adr-lms.whitex.cloud
|
NEXTAUTH_URL=https://your-dev-domain.com
|
||||||
NEXT_PUBLIC_API_URL=https://adr-lms.whitex.cloud/api/v1/
|
NEXT_PUBLIC_API_URL=https://your-dev-domain.com/api/v1/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_API_URL=https://adr-lms.whitex.cloud/api/v1/
|
NEXT_PUBLIC_LEARNHOUSE_API_URL=https://your-dev-domain.com/api/v1/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=https://adr-lms.whitex.cloud/
|
NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=https://your-dev-domain.com/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_DEFAULT_ORG=default
|
NEXT_PUBLIC_LEARNHOUSE_DEFAULT_ORG=default
|
||||||
NEXT_PUBLIC_LEARNHOUSE_DOMAIN=adr-lms.whitex.cloud
|
NEXT_PUBLIC_LEARNHOUSE_DOMAIN=your-dev-domain.com
|
||||||
NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false
|
NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false
|
||||||
NEXT_PUBLIC_LEARNHOUSE_TOP_DOMAIN=adr-lms.whitex.cloud
|
NEXT_PUBLIC_LEARNHOUSE_TOP_DOMAIN=your-dev-domain.com
|
||||||
POSTGRES_DB=learnhouse_dev
|
POSTGRES_DB=learnhouse_dev
|
||||||
POSTGRES_PASSWORD=Yvvxnnf1+qr6r+6d92NvbaXWeGuRqmsroFdildw9ez4
|
POSTGRES_PASSWORD=YOUR_DEV_DB_PASSWORD
|
||||||
POSTGRES_USER=learnhouse_dev
|
POSTGRES_USER=learnhouse_dev
|
||||||
REDIS_PASSWORD=CfhIfLu2c1VEEpGmhs80NUUvUMzyCq1lmzBZmFJDdrs
|
REDIS_PASSWORD=YOUR_DEV_REDIS_PASSWORD
|
||||||
```
|
```
|
||||||
|
|
||||||
## LIVE Environment (edu.adradviser.ro)
|
## LIVE Environment
|
||||||
```
|
```
|
||||||
DEPLOYMENT_NAME=live
|
DEPLOYMENT_NAME=live
|
||||||
LEARNHOUSE_DOMAIN=edu.adradviser.ro
|
LEARNHOUSE_DOMAIN=your-prod-domain.com
|
||||||
LEARNHOUSE_COOKIE_DOMAIN=edu.adradviser.ro
|
LEARNHOUSE_COOKIE_DOMAIN=your-prod-domain.com
|
||||||
LEARNHOUSE_CONTACT_EMAIL=adr-lm@whitex.cloud
|
LEARNHOUSE_CONTACT_EMAIL=contact@.com
|
||||||
LEARNHOUSE_EMAIL_PROVIDER=resend
|
LEARNHOUSE_EMAIL_PROVIDER=resend
|
||||||
LEARNHOUSE_IS_AI_ENABLED=false
|
LEARNHOUSE_IS_AI_ENABLED=false
|
||||||
LEARNHOUSE_REDIS_CONNECTION_STRING=redis://default:tRK6fpKHGM2lWY8AYvL7L5kRQhncF2gydYOxG4l8vNY@redis:6379/0
|
LEARNHOUSE_REDIS_CONNECTION_STRING=redis://default:YOUR_LIVE_REDIS_PASSWORD@redis:6379/0
|
||||||
LEARNHOUSE_RESEND_API_KEY=re_LenY3zNh_S5ShneCyS3Pbf6HX75Yt8jet
|
LEARNHOUSE_RESEND_API_KEY=YOUR_RESEND_API_KEY
|
||||||
LEARNHOUSE_SELF_HOSTED=true
|
LEARNHOUSE_SELF_HOSTED=true
|
||||||
LEARNHOUSE_SITE_DESCRIPTION=ADR LMS is platform tailored for learning experiences.
|
LEARNHOUSE_SITE_DESCRIPTION=ADR LMS is platform tailored for learning experiences.
|
||||||
LEARNHOUSE_SITE_NAME=ADR LMS
|
LEARNHOUSE_SITE_NAME=ADR LMS
|
||||||
LEARNHOUSE_SQL_CONNECTION_STRING=postgresql://learnhouse:kOZ8JgUNNSbPKSlfIBDBs5Ycs+ZOVZ3NZZooQrOyOqI@db:5432/learnhouse
|
LEARNHOUSE_SQL_CONNECTION_STRING=postgresql://learnhouse:YOUR_LIVE_DB_PASSWORD@db:5432/learnhouse
|
||||||
LEARNHOUSE_SSL=true
|
LEARNHOUSE_SSL=true
|
||||||
LEARNHOUSE_SYSTEM_EMAIL_ADDRESS=adr-lms@whitex.cloud
|
LEARNHOUSE_SYSTEM_EMAIL_ADDRESS=contact@.com
|
||||||
NEXTAUTH_SECRET=LPBwWytdQu9QDQHTdHEOHsHGhXDqdu6I686dXLVHH4g
|
NEXTAUTH_SECRET=YOUR_LIVE_NEXTAUTH_SECRET
|
||||||
NEXTAUTH_URL=https://edu.adradviser.ro
|
NEXTAUTH_URL=https://your-prod-domain.com
|
||||||
NEXT_PUBLIC_API_URL=https://edu.adradviser.ro/api/v1/
|
NEXT_PUBLIC_API_URL=https://your-prod-domain.com/api/v1/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_API_URL=https://edu.adradviser.ro/api/v1/
|
NEXT_PUBLIC_LEARNHOUSE_API_URL=https://your-prod-domain.com/api/v1/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=https://edu.adradviser.ro/
|
NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=https://your-prod-domain.com/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_DEFAULT_ORG=default
|
NEXT_PUBLIC_LEARNHOUSE_DEFAULT_ORG=default
|
||||||
NEXT_PUBLIC_LEARNHOUSE_DOMAIN=edu.adradviser.ro
|
NEXT_PUBLIC_LEARNHOUSE_DOMAIN=your-prod-domain.com
|
||||||
NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false
|
NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false
|
||||||
NEXT_PUBLIC_LEARNHOUSE_TOP_DOMAIN=edu.adradviser.ro
|
NEXT_PUBLIC_LEARNHOUSE_TOP_DOMAIN=your-prod-domain.com
|
||||||
POSTGRES_DB=learnhouse
|
POSTGRES_DB=learnhouse
|
||||||
POSTGRES_PASSWORD=kOZ8JgUNNSbPKSlfIBDBs5Ycs+ZOVZ3NZZooQrOyOqI
|
POSTGRES_PASSWORD=YOUR_LIVE_DB_PASSWORD
|
||||||
POSTGRES_USER=learnhouse
|
POSTGRES_USER=learnhouse
|
||||||
REDIS_PASSWORD=tRK6fpKHGM2lWY8AYvL7L5kRQhncF2gydYOxG4l8vNY
|
REDIS_PASSWORD=YOUR_LIVE_REDIS_PASSWORD
|
||||||
```
|
```
|
||||||
|
|
||||||
## Key Differences for Isolation
|
## Key Differences for Isolation
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ This document provides instructions for deploying LearnHouse using Coolify, ensu
|
||||||
|
|
||||||
### 3. Configure Domain Settings
|
### 3. Configure Domain Settings
|
||||||
|
|
||||||
- Add your domain (e.g., `learnhouse.example.com`) in the resource settings
|
- Add your domain (e.g., `learnhouse.com`) in the resource settings
|
||||||
- Enable HTTPS if needed (recommended for production)
|
- Enable HTTPS if needed (recommended for production)
|
||||||
- Configure any necessary redirects
|
- Configure any necessary redirects
|
||||||
|
|
||||||
|
|
@ -42,18 +42,18 @@ LEARNHOUSE_SSL=true
|
||||||
LEARNHOUSE_CONTACT_EMAIL=contact@example.com
|
LEARNHOUSE_CONTACT_EMAIL=contact@example.com
|
||||||
|
|
||||||
# Domain Configuration
|
# Domain Configuration
|
||||||
NEXT_PUBLIC_LEARNHOUSE_DOMAIN=learnhouse.example.com
|
NEXT_PUBLIC_LEARNHOUSE_DOMAIN=learnhouse.com
|
||||||
LEARNHOUSE_COOKIE_DOMAIN=learnhouse.example.com
|
LEARNHOUSE_COOKIE_DOMAIN=learnhouse.com
|
||||||
NEXT_PUBLIC_LEARNHOUSE_TOP_DOMAIN=learnhouse.example.com
|
NEXT_PUBLIC_LEARNHOUSE_TOP_DOMAIN=learnhouse.com
|
||||||
|
|
||||||
# Authentication
|
# Authentication
|
||||||
NEXTAUTH_SECRET=your_generated_secret_key
|
NEXTAUTH_SECRET=your_generated_secret_key
|
||||||
NEXTAUTH_URL=https://learnhouse.example.com
|
NEXTAUTH_URL=https://learnhouse.com
|
||||||
|
|
||||||
# API URLs
|
# API URLs
|
||||||
NEXT_PUBLIC_API_URL=https://learnhouse.example.com/api/v1/
|
NEXT_PUBLIC_API_URL=https://learnhouse.com/api/v1/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_API_URL=https://learnhouse.example.com/api/v1/
|
NEXT_PUBLIC_LEARNHOUSE_API_URL=https://learnhouse.com/api/v1/
|
||||||
NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=https://learnhouse.example.com/
|
NEXT_PUBLIC_LEARNHOUSE_BACKEND_URL=https://learnhouse.com/
|
||||||
|
|
||||||
# Organization Settings
|
# Organization Settings
|
||||||
NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false
|
NEXT_PUBLIC_LEARNHOUSE_MULTI_ORG=false
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
This setup provides complete network isolation between your DEV and LIVE LearnHouse deployments using a single dynamic Docker Compose file and environment variables.
|
This setup provides complete network isolation between your DEV and LIVE LearnHouse deployments using a single dynamic Docker Compose file and environment variables.
|
||||||
|
|
||||||
|
> ⚠️ **NOTE**: This document uses example placeholder domains. Replace all example values with your actual domains before deployment. See [`COOLIFY_ENV_VARS.md`](COOLIFY_ENV_VARS.md) for a complete list of environment variables.
|
||||||
|
|
||||||
## Single Dynamic Compose File
|
## Single Dynamic Compose File
|
||||||
|
|
||||||
- `docker-compose-coolify.yml` - Works for both DEV and LIVE deployments using environment variables
|
- `docker-compose-coolify.yml` - Works for both DEV and LIVE deployments using environment variables
|
||||||
|
|
@ -21,29 +23,29 @@ The compose file uses `${DEPLOYMENT_NAME:-learnhouse}` patterns to create:
|
||||||
|
|
||||||
## Coolify Deployment Instructions
|
## Coolify Deployment Instructions
|
||||||
|
|
||||||
### For DEV Environment (adr-lms.whitex.cloud)
|
### For DEV Environment
|
||||||
|
|
||||||
1. In Coolify, create a new resource/service
|
1. In Coolify, create a new resource/service
|
||||||
2. Use the standard `docker-compose-coolify.yml` file
|
2. Use the standard `docker-compose-coolify.yml` file
|
||||||
3. Set these **key environment variables**:
|
3. Set these **key environment variables**:
|
||||||
```
|
```
|
||||||
DEPLOYMENT_NAME=dev
|
DEPLOYMENT_NAME=dev
|
||||||
LEARNHOUSE_DOMAIN=adr-lms.whitex.cloud
|
LEARNHOUSE_DOMAIN=your-dev-domain.example.com
|
||||||
LEARNHOUSE_COOKIE_DOMAIN=adr-lms.whitex.cloud
|
LEARNHOUSE_COOKIE_DOMAIN=your-dev-domain.example.com
|
||||||
NEXTAUTH_URL=https://adr-lms.whitex.cloud
|
NEXTAUTH_URL=https://your-dev-domain.example.com
|
||||||
# ... your other DEV environment variables
|
# ... your other DEV environment variables
|
||||||
```
|
```
|
||||||
|
|
||||||
### For LIVE Environment (edu.adradviser.ro)
|
### For LIVE Environment
|
||||||
|
|
||||||
1. In Coolify, create a new resource/service
|
1. In Coolify, create a new resource/service
|
||||||
2. Use the same `docker-compose-coolify.yml` file
|
2. Use the same `docker-compose-coolify.yml` file
|
||||||
3. Set these **key environment variables**:
|
3. Set these **key environment variables**:
|
||||||
```
|
```
|
||||||
DEPLOYMENT_NAME=live
|
DEPLOYMENT_NAME=live
|
||||||
LEARNHOUSE_DOMAIN=edu.adradviser.ro
|
LEARNHOUSE_DOMAIN=your-prod-domain.example.com
|
||||||
LEARNHOUSE_COOKIE_DOMAIN=edu.adradviser.ro
|
LEARNHOUSE_COOKIE_DOMAIN=your-prod-domain.example.com
|
||||||
NEXTAUTH_URL=https://edu.adradviser.ro
|
NEXTAUTH_URL=https://your-prod-domain.example.com
|
||||||
# ... your other LIVE environment variables
|
# ... your other LIVE environment variables
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -83,16 +85,16 @@ After deployment, verify isolation:
|
||||||
```
|
```
|
||||||
|
|
||||||
3. **Test cookie domains** in browser DevTools:
|
3. **Test cookie domains** in browser DevTools:
|
||||||
- DEV cookies: domain `adr-lms.whitex.cloud`
|
- DEV cookies: domain `your-dev-domain.example.com`
|
||||||
- LIVE cookies: domain `edu.adradviser.ro`
|
- LIVE cookies: domain `your-prod-domain.example.com`
|
||||||
|
|
||||||
## Adding New Environments
|
## Adding New Environments
|
||||||
|
|
||||||
To add a staging environment:
|
To add a staging environment:
|
||||||
```
|
```
|
||||||
DEPLOYMENT_NAME=staging
|
DEPLOYMENT_NAME=staging
|
||||||
LEARNHOUSE_DOMAIN=staging.example.com
|
LEARNHOUSE_DOMAIN=your-staging-domain.example.com
|
||||||
LEARNHOUSE_COOKIE_DOMAIN=staging.example.com
|
LEARNHOUSE_COOKIE_DOMAIN=your-staging-domain.example.com
|
||||||
```
|
```
|
||||||
|
|
||||||
This automatically creates `staging-network` and Coolify handles volume isolation.
|
This automatically creates `staging-network` and Coolify handles volume isolation.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue