# Heroku Deployment Guide {#heroku-deployment-guide}


Deploy Ever Gauzy to Heroku.


## Prerequisites {#prerequisites}


- Heroku CLI installed
- Heroku account with a plan supporting containers


## Quick Start {#quick-start}



### 1. Create Heroku App {#1-create-heroku-app}


```bash
heroku create gauzy-api
heroku addons:create heroku-postgresql:essential-0
heroku addons:create heroku-redis:mini
```


### 2. Set Configuration {#2-set-configuration}


```bash
heroku config:set \
  NODE_ENV=production \
  DB_TYPE=postgres \
  JWT_SECRET=$(openssl rand -base64 32) \
  JWT_REFRESH_SECRET=$(openssl rand -base64 32) \
  API_BASE_URL=https://gauzy-api.herokuapp.com \
  CLIENT_BASE_URL=https://gauzy-webapp.herokuapp.com
```


### 3. Deploy with Docker {#3-deploy-with-docker}


```bash
heroku container:push web --app gauzy-api
heroku container:release web --app gauzy-api
```


### 4. Scale {#4-scale}


```bash
heroku ps:scale web=1:standard-1x
```


## Heroku-Specific Notes {#heroku-specific-notes}


- `DATABASE_URL` is auto-set by the PostgreSQL addon
- `REDIS_URL` is auto-set by the Redis addon
- SSL is included on all Heroku apps
- Use `heroku logs --tail` for debugging


## Related Pages {#related-pages}


- [Production Deployment](https://sourcey-gauzy.pages.dev/devops/production-deployment/index.md) — general guide
- [Environment Variables](https://sourcey-gauzy.pages.dev/devops/environment-variables/index.md) — configuration
