chore: prep v2 self-hosting
This commit is contained in:
@@ -3,6 +3,20 @@ title: Changelog for self-hosting
|
||||
description: This is a list of changes that have been made to the self-hosting setup.
|
||||
---
|
||||
|
||||
## 2.0.0
|
||||
|
||||
We have released the first stable version of OpenPanel v2. This is a big one!
|
||||
|
||||
Read more about it in our [migration guide](/docs/migration/migrate-v1-to-v2).
|
||||
|
||||
TLDR;
|
||||
|
||||
- Clickhouse upgraded from 24.3.2-alpine to 25.10.2.65
|
||||
- Add `CLICKHOUSE_SKIP_USER_SETUP=1` to op-ch service
|
||||
- `NEXT_PUBLIC_DASHBOARD_URL` -> `DASHBOARD_URL`
|
||||
- `NEXT_PUBLIC_API_URL` -> `API_URL`
|
||||
- `NEXT_PUBLIC_SELF_HOSTED` -> `SELF_HOSTED`
|
||||
|
||||
## 1.2.0
|
||||
|
||||
We have renamed `SELF_HOSTED` to `NEXT_PUBLIC_SELF_HOSTED`. It's important to rename this env before your upgrade to this version.
|
||||
@@ -30,7 +44,7 @@ If you upgrading from a previous version, you'll need to edit your `.env` file i
|
||||
|
||||
### Removed Clickhouse Keeper
|
||||
|
||||
In 0.0.6 we introduced a cluster mode for Clickhouse. This was a misstake and we have removed it.
|
||||
In 0.0.6 we introduced a cluster mode for Clickhouse. This was a mistake and we have removed it.
|
||||
|
||||
Remove op-zk from services and volumes
|
||||
|
||||
|
||||
@@ -109,8 +109,8 @@ Coolify automatically handles these variables:
|
||||
- `DATABASE_URL`: PostgreSQL connection string
|
||||
- `REDIS_URL`: Redis connection string
|
||||
- `CLICKHOUSE_URL`: ClickHouse connection string
|
||||
- `NEXT_PUBLIC_API_URL`: API endpoint URL (set via `SERVICE_FQDN_OPAPI`)
|
||||
- `NEXT_PUBLIC_DASHBOARD_URL`: Dashboard URL (set via `SERVICE_FQDN_OPDASHBOARD`)
|
||||
- `API_URL`: API endpoint URL (set via `SERVICE_FQDN_OPAPI`)
|
||||
- `DASHBOARD_URL`: Dashboard URL (set via `SERVICE_FQDN_OPDASHBOARD`)
|
||||
- `COOKIE_SECRET`: Automatically generated secret
|
||||
|
||||
You can configure optional variables like `ALLOW_REGISTRATION`, `RESEND_API_KEY`, `OPENAI_API_KEY`, etc. through Coolify's environment variable interface.
|
||||
|
||||
@@ -126,7 +126,7 @@ If you want to use specific image versions, edit the `docker-compose.yml` file a
|
||||
|
||||
```yaml
|
||||
op-api:
|
||||
image: lindesvard/openpanel-api:v1.0.0 # Specify version
|
||||
image: lindesvard/openpanel-api:2.0.0 # Specify version
|
||||
```
|
||||
|
||||
### Scaling Workers
|
||||
|
||||
@@ -54,8 +54,8 @@ Edit the `.env` file or environment variables in Dokploy. You **must** set these
|
||||
|
||||
```bash
|
||||
# Required: Set these to your actual domain
|
||||
NEXT_PUBLIC_API_URL=https://yourdomain.com/api
|
||||
NEXT_PUBLIC_DASHBOARD_URL=https://yourdomain.com
|
||||
API_URL=https://yourdomain.com/api
|
||||
DASHBOARD_URL=https://yourdomain.com
|
||||
|
||||
# Database Configuration (automatically set by Dokploy)
|
||||
OPENPANEL_POSTGRES_DB=openpanel-db
|
||||
@@ -71,7 +71,7 @@ OPENPANEL_EMAIL_SENDER=noreply@yourdomain.com
|
||||
```
|
||||
|
||||
<Callout type="warn">
|
||||
⚠️ **Critical**: Unlike Coolify, Dokploy does not support `SERVICE_FQDN_*` variables. You **must** hardcode `NEXT_PUBLIC_API_URL` and `NEXT_PUBLIC_DASHBOARD_URL` with your actual domain values.
|
||||
⚠️ **Critical**: Unlike Coolify, Dokploy does not support `SERVICE_FQDN_*` variables. You **must** hardcode `API_URL` and `DASHBOARD_URL` with your actual domain values.
|
||||
</Callout>
|
||||
</Step>
|
||||
|
||||
@@ -133,8 +133,8 @@ If you're using Cloudflare in front of Dokploy, remember to purge the Cloudflare
|
||||
|
||||
For Dokploy, you **must** hardcode these variables (unlike Coolify, Dokploy doesn't support `SERVICE_FQDN_*` variables):
|
||||
|
||||
- `NEXT_PUBLIC_API_URL` - Full API URL (e.g., `https://analytics.example.com/api`)
|
||||
- `NEXT_PUBLIC_DASHBOARD_URL` - Full Dashboard URL (e.g., `https://analytics.example.com`)
|
||||
- `API_URL` - Full API URL (e.g., `https://analytics.example.com/api`)
|
||||
- `DASHBOARD_URL` - Full Dashboard URL (e.g., `https://analytics.example.com`)
|
||||
|
||||
Dokploy automatically sets:
|
||||
- `OPENPANEL_POSTGRES_DB` - PostgreSQL database name
|
||||
@@ -166,9 +166,9 @@ If API requests fail after deployment:
|
||||
|
||||
1. **Verify environment variables**:
|
||||
```bash
|
||||
# Check that NEXT_PUBLIC_API_URL is set correctly
|
||||
docker exec <op-api-container> env | grep NEXT_PUBLIC_API_URL
|
||||
docker exec <op-dashboard-container> env | grep NEXT_PUBLIC_API_URL
|
||||
# Check that API_URL is set correctly
|
||||
docker exec <op-api-container> env | grep API_URL
|
||||
docker exec <op-dashboard-container> env | grep API_URL
|
||||
```
|
||||
|
||||
2. **Check "Strip external path" setting**:
|
||||
@@ -188,7 +188,7 @@ If account creation fails:
|
||||
# In Dokploy, view logs for op-api service
|
||||
```
|
||||
|
||||
2. Verify `NEXT_PUBLIC_API_URL` matches your domain:
|
||||
2. Verify `API_URL` matches your domain:
|
||||
- Should be `https://yourdomain.com/api`
|
||||
- Not `http://localhost:3000` or similar
|
||||
|
||||
@@ -240,7 +240,7 @@ The Dokploy template differs from Coolify in these ways:
|
||||
|
||||
1. **Environment Variables**:
|
||||
- Dokploy does not support `SERVICE_FQDN_*` variables
|
||||
- Must hardcode `NEXT_PUBLIC_API_URL` and `NEXT_PUBLIC_DASHBOARD_URL`
|
||||
- Must hardcode `API_URL` and `DASHBOARD_URL`
|
||||
|
||||
2. **Domain Configuration**:
|
||||
- Must manually configure domain paths
|
||||
|
||||
@@ -116,7 +116,7 @@ Remove `convert_any_join` from ClickHouse settings. Used for compatibility with
|
||||
|
||||
## Application URLs
|
||||
|
||||
### NEXT_PUBLIC_API_URL
|
||||
### API_URL
|
||||
|
||||
**Type**: `string`
|
||||
**Required**: Yes
|
||||
@@ -126,10 +126,10 @@ Public API URL exposed to the browser. Used by the dashboard frontend and API se
|
||||
|
||||
**Example**:
|
||||
```bash
|
||||
NEXT_PUBLIC_API_URL=https://analytics.example.com/api
|
||||
API_URL=https://analytics.example.com/api
|
||||
```
|
||||
|
||||
### NEXT_PUBLIC_DASHBOARD_URL
|
||||
### DASHBOARD_URL
|
||||
|
||||
**Type**: `string`
|
||||
**Required**: Yes
|
||||
@@ -139,7 +139,7 @@ Public dashboard URL exposed to the browser. Used by the dashboard frontend and
|
||||
|
||||
**Example**:
|
||||
```bash
|
||||
NEXT_PUBLIC_DASHBOARD_URL=https://analytics.example.com
|
||||
DASHBOARD_URL=https://analytics.example.com
|
||||
```
|
||||
|
||||
### API_CORS_ORIGINS
|
||||
@@ -368,7 +368,7 @@ SLACK_STATE_SECRET=your-state-secret
|
||||
|
||||
## Self-hosting
|
||||
|
||||
### NEXT_PUBLIC_SELF_HOSTED
|
||||
### SELF_HOSTED
|
||||
|
||||
**Type**: `boolean`
|
||||
**Required**: No
|
||||
@@ -378,7 +378,7 @@ Enable self-hosted mode. Set to `true` or `1` to enable self-hosting features. U
|
||||
|
||||
**Example**:
|
||||
```bash
|
||||
NEXT_PUBLIC_SELF_HOSTED=true
|
||||
SELF_HOSTED=true
|
||||
```
|
||||
|
||||
## Worker & Queue
|
||||
@@ -784,8 +784,8 @@ For a basic self-hosted installation, these variables are required:
|
||||
- `DATABASE_URL` - PostgreSQL connection
|
||||
- `REDIS_URL` - Redis connection
|
||||
- `CLICKHOUSE_URL` - ClickHouse connection
|
||||
- `NEXT_PUBLIC_API_URL` - API endpoint URL
|
||||
- `NEXT_PUBLIC_DASHBOARD_URL` - Dashboard URL
|
||||
- `API_URL` - API endpoint URL
|
||||
- `DASHBOARD_URL` - Dashboard URL
|
||||
- `COOKIE_SECRET` - Session encryption secret
|
||||
|
||||
### Optional but Recommended
|
||||
|
||||
@@ -163,7 +163,7 @@ For complete AI configuration details, see the [Environment Variables documentat
|
||||
|
||||
If you use a managed Redis service, you may need to set the `notify-keyspace-events` manually.
|
||||
|
||||
Without this setting we wont be able to listen for expired keys which we use for caluclating currently active vistors.
|
||||
Without this setting we won't be able to listen for expired keys which we use for calculating currently active visitors.
|
||||
|
||||
> You will see a warning in the logs if this needs to be set manually.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user