diff --git a/apps/docs/content/features/access.mdx b/apps/docs/content/features/access.mdx index 7591dd60..105bd117 100644 --- a/apps/docs/content/features/access.mdx +++ b/apps/docs/content/features/access.mdx @@ -173,6 +173,10 @@ When using Let's Encrypt certificates (recommended): For applications requiring direct port access or non-HTTP protocols, Zerops provides flexible port configuration options. +:::important +Currently, direct public port access is only available for runtime services and PostgreSQL databases. +::: +

Enable Firewall -

- +

\ No newline at end of file diff --git a/apps/docs/content/postgresql/how-to/connect.mdx b/apps/docs/content/postgresql/how-to/connect.mdx index 9774f633..2adb5712 100644 --- a/apps/docs/content/postgresql/how-to/connect.mdx +++ b/apps/docs/content/postgresql/how-to/connect.mdx @@ -3,35 +3,67 @@ title: Connect to PostgreSQL in Zerops description: Learn how to connect to your PostgreSQL database in Zerops from various environments. --- -This guide covers how to connect to your PostgreSQL database in Zerops, both from services within the same project and from your local workstation. +This guide covers how to connect to your PostgreSQL database in Zerops, both from services within the same project and from outside the Zerops environment. ## Connection Options Overview -Zerops provides two primary ways to connect to PostgreSQL: +Zerops provides several ways to connect to PostgreSQL: 1. **Internal connections** - Between services in the same Zerops project (via private network) -2. **Remote connections** - From your local machine (via Zerops VPN) - -:::caution -For security reasons, Zerops doesn't allow exposing PostgreSQL services directly to the internet. -::: +2. **Remote connections**: + - **VPN access** - From your local machine via Zerops VPN + - **Direct IP access** - Enables external applications to connect using TLS encryption by opening public ports on IPv6 (available by default) or IPv4 (requires add-on activation if not already enabled) ## Connection Details -You'll find PostgreSQL connection details in two places in the Zerops GUI: +You'll find internal PostgreSQL connection details in two places in the Zerops GUI: 1. Under the **Access details** button in the project dashboard 2. In the service detail page under the **Peek access details** button ### Connection Parameters -| Parameter | Description | -| --------------------- | --------------------------------------------------------------------- | -| **Hostname** | Identical to the service hostname | -| **Port** | **5432** (fixed for all PostgreSQL services) | -| **User** | Identical to the service hostname | -| **Password** | Randomly generated during service creation | -| **Connection string** | `postgresql://${user}:${password}@{hostname}:5432` | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterInternal ConnectionDirect IP Access (TLS)
Hostname/IPService hostnamePublic IP address
Port54326432
UserIdentical to the service hostnameSame as internal
PasswordRandomly generated during service creationSame as internal
Port env variable`port``portTls`
Connection string env variable`connectionString``connectionTlsString`
:::warning Zerops creates a system user named `zps` with full privileges for maintenance purposes. Do not delete, change the password, or remove privileges from this user, as it will disrupt Zerops' ability to maintain the database cluster. @@ -72,6 +104,10 @@ For more details on how to use environment variables, and instructions for addin ## Connect Remotely +Zerops offers two methods for connecting to your PostgreSQL database from outside the Zerops environment: + +### Method 1: Connect via Zerops VPN + You can securely connect to PostgreSQL from your local workstation via Zerops VPN: 1. [Install & set up zCLI](/references/cli) @@ -84,4 +120,23 @@ You can securely connect to PostgreSQL from your local workstation via Zerops VP * If your connection over VPN doesn't work, try adding `.zerops` suffix to the service hostname (e.g., `database1.zerops`). For additional help, check the [VPN troubleshooting page](/references/vpn/troubleshooting). ::: +### Method 2: Connect via Direct IP Access + +Direct IP Access uses [pgBouncer](https://www.pgbouncer.org/) for connection pooling and TLS termination. + +Internally, port `5432` is available without SSL. Externally, connections are secured with TLS through pgBouncer (port `6432`) before being routed to your PostgreSQL service. + +#### Enable external access + +1. Navigate to your PostgreSQL service in the Zerops GUI and choose the **Public Access through IP Addresses** section +2. Choose either IPv6 (available by default) or IPv4 (requires the [unique IPv4](/features/access#dedicated-ipv4-address-330-days) add-on) +3. Open one or more ports and point them to your PostgreSQL service (the system will direct them through pgBouncer) + - Choose any port from 10-65435 (except 80 and 443) + - Select destination service and internal port + - Each public port can be mapped to any internal service port + - Multiple public ports can point to the same internal port if needed + - Port configurations can be set independently for IPv4 and IPv6 +4. Optionally enable firewall protection for additional security +5. Click the **Publish X IP access change(s)** button to apply your settings + For database management tools and how to manage users and databases, see [Manage PostgreSQL Users and Databases](/postgresql/how-to/manage). \ No newline at end of file diff --git a/apps/docs/static/llms-full.txt b/apps/docs/static/llms-full.txt index de0712f6..b64f0367 100644 --- a/apps/docs/static/llms-full.txt +++ b/apps/docs/static/llms-full.txt @@ -11901,6 +11901,10 @@ When using Let's Encrypt certificates (recommended): For applications requiring direct port access or non-HTTP protocols, Zerops provides flexible port configuration options. +:::important +Currently, direct public port access is only available for runtime services and PostgreSQL databases. +::: +

- - Zerops provides data backup for certain services. Whether a service supports backups is specified on the documentation page of each service. Technical details about backup implementation for each service are also described on their respective service pages. @@ -26382,7 +26387,7 @@ Zerops provides information about how much hardware resources the KeyDB service [KeyDB ↗](https://docs.keydb.dev/) is a fully open source database, a faster drop-in alternative to Redis. It offers enhanced performance, multithreading capabilities, and maintains full compatibility with Redis clients and APIs. :::important -While KeyDB is available on Zerops, please note that KeyDB development has not been very active recently. For new Redis-compatible deployments, we recommend considering [Valkey](https://valkey.io/) as the preferred alternative due to its active development and ongoing support. +While KeyDB is available on Zerops, please note that KeyDB development has not been very active recently. For new Redis-compatible deployments, we recommend considering [Valkey](/valkey/overview) as the preferred alternative due to its active development and ongoing support. ::: ## Feature Highlights @@ -26453,87 +26458,6 @@ While KeyDB is available on Zerops, please note that KeyDB development has not b ]} /> -### Service Management - - - -### Additional Operations - - - -## When in doubt, reach out - -Don't know how to start or got stuck during the process? You might not be the first one, visit the FAQ section to find out. - -In case you haven't found an answer (and also if you have), we and our community are looking forward to hearing from you on Discord. - -Have you built something that others might find useful? Don't hesitate to share your knowledge! - - - ## Popular Guides +*Need help? Join our [Discord community](https://discord.gg/zeropsio).* + @@ -37709,35 +37635,67 @@ Did none of these Guides fit your needs? Join our **[Discord](https://discord.co -This guide covers how to connect to your PostgreSQL database in Zerops, both from services within the same project and from your local workstation. +This guide covers how to connect to your PostgreSQL database in Zerops, both from services within the same project and from outside the Zerops environment. ## Connection Options Overview -Zerops provides two primary ways to connect to PostgreSQL: +Zerops provides several ways to connect to PostgreSQL: 1. **Internal connections** - Between services in the same Zerops project (via private network) -2. **Remote connections** - From your local machine (via Zerops VPN) - -:::caution -For security reasons, Zerops doesn't allow exposing PostgreSQL services directly to the internet. -::: +2. **Remote connections**: + - **VPN access** - From your local machine via Zerops VPN + - **Direct IP access** - Enables external applications to connect using TLS encryption by opening public ports on IPv6 (available by default) or IPv4 (requires add-on activation if not already enabled) ## Connection Details -You'll find PostgreSQL connection details in two places in the Zerops GUI: +You'll find internal PostgreSQL connection details in two places in the Zerops GUI: 1. Under the **Access details** button in the project dashboard 2. In the service detail page under the **Peek access details** button ### Connection Parameters -| Parameter | Description | -| --------------------- | --------------------------------------------------------------------- | -| **Hostname** | Identical to the service hostname | -| **Port** | **5432** (fixed for all PostgreSQL services) | -| **User** | Identical to the service hostname | -| **Password** | Randomly generated during service creation | -| **Connection string** | `postgresql://${user}:${password}@{hostname}:5432` | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterInternal ConnectionDirect IP Access (TLS)
Hostname/IPService hostnamePublic IP address
Port54326432
UserIdentical to the service hostnameSame as internal
PasswordRandomly generated during service creationSame as internal
Port env variable`port``portTls`
Connection string env variable`connectionString``connectionTlsString`
:::warning Zerops creates a system user named `zps` with full privileges for maintenance purposes. Do not delete, change the password, or remove privileges from this user, as it will disrupt Zerops' ability to maintain the database cluster. @@ -37778,6 +37736,10 @@ For more details on how to use environment variables, and instructions for addin ## Connect Remotely +Zerops offers two methods for connecting to your PostgreSQL database from outside the Zerops environment: + +### Method 1: Connect via Zerops VPN + You can securely connect to PostgreSQL from your local workstation via Zerops VPN: 1. [Install & set up zCLI](/references/cli) @@ -37790,6 +37752,25 @@ You can securely connect to PostgreSQL from your local workstation via Zerops VP * If your connection over VPN doesn't work, try adding `.zerops` suffix to the service hostname (e.g., `database1.zerops`). For additional help, check the [VPN troubleshooting page](/references/vpn/troubleshooting). ::: +### Method 2: Connect via Direct IP Access + +Direct IP Access uses [pgBouncer](https://www.pgbouncer.org/) for connection pooling and TLS termination. + +Internally, port `5432` is available without SSL. Externally, connections are secured with TLS through pgBouncer (port `6432`) before being routed to your PostgreSQL service. + +#### Enable external access + +1. Navigate to your PostgreSQL service in the Zerops GUI and choose the **Public Access through IP Addresses** section +2. Choose either IPv6 (available by default) or IPv4 (requires the [unique IPv4](/features/access#dedicated-ipv4-address-330-days) add-on) +3. Open one or more ports and point them to your PostgreSQL service (the system will direct them through pgBouncer) + - Choose any port from 10-65435 (except 80 and 443) + - Select destination service and internal port + - Each public port can be mapped to any internal service port + - Multiple public ports can point to the same internal port if needed + - Port configurations can be set independently for IPv4 and IPv6 +4. Optionally enable firewall protection for additional security +5. Click the **Publish X IP access change(s)** button to apply your settings + For database management tools and how to manage users and databases, see [Manage PostgreSQL Users and Databases](/postgresql/how-to/manage). diff --git a/apps/docs/static/llms-small.txt b/apps/docs/static/llms-small.txt index 5718c2c1..6012ce22 100644 --- a/apps/docs/static/llms-small.txt +++ b/apps/docs/static/llms-small.txt @@ -11626,6 +11626,10 @@ When using Let's Encrypt certificates (recommended): For applications requiring direct port access or non-HTTP protocols, Zerops provides flexible port configuration options. +:::important +Currently, direct public port access is only available for runtime services and PostgreSQL databases. +::: +

- - Zerops provides data backup for certain services. Whether a service supports backups is specified on the documentation page of each service. Technical details about backup implementation for each service are also described on their respective service pages. @@ -26007,7 +26012,7 @@ Zerops provides information about how much hardware resources the KeyDB service [KeyDB ↗](https://docs.keydb.dev/) is a fully open source database, a faster drop-in alternative to Redis. It offers enhanced performance, multithreading capabilities, and maintains full compatibility with Redis clients and APIs. :::important -While KeyDB is available on Zerops, please note that KeyDB development has not been very active recently. For new Redis-compatible deployments, we recommend considering [Valkey](https://valkey.io/) as the preferred alternative due to its active development and ongoing support. +While KeyDB is available on Zerops, please note that KeyDB development has not been very active recently. For new Redis-compatible deployments, we recommend considering [Valkey](/valkey/overview) as the preferred alternative due to its active development and ongoing support. ::: ## Feature Highlights @@ -26078,87 +26083,6 @@ While KeyDB is available on Zerops, please note that KeyDB development has not b ]} /> -### Service Management - - - -### Additional Operations - - - -## When in doubt, reach out - -Don't know how to start or got stuck during the process? You might not be the first one, visit the FAQ section to find out. - -In case you haven't found an answer (and also if you have), we and our community are looking forward to hearing from you on Discord. - -Have you built something that others might find useful? Don't hesitate to share your knowledge! - - - ## Popular Guides +*Need help? Join our [Discord community](https://discord.gg/zeropsio).* + @@ -37334,35 +37260,67 @@ Did none of these Guides fit your needs? Join our **[Discord](https://discord.co -This guide covers how to connect to your PostgreSQL database in Zerops, both from services within the same project and from your local workstation. +This guide covers how to connect to your PostgreSQL database in Zerops, both from services within the same project and from outside the Zerops environment. ## Connection Options Overview -Zerops provides two primary ways to connect to PostgreSQL: +Zerops provides several ways to connect to PostgreSQL: 1. **Internal connections** - Between services in the same Zerops project (via private network) -2. **Remote connections** - From your local machine (via Zerops VPN) - -:::caution -For security reasons, Zerops doesn't allow exposing PostgreSQL services directly to the internet. -::: +2. **Remote connections**: + - **VPN access** - From your local machine via Zerops VPN + - **Direct IP access** - Enables external applications to connect using TLS encryption by opening public ports on IPv6 (available by default) or IPv4 (requires add-on activation if not already enabled) ## Connection Details -You'll find PostgreSQL connection details in two places in the Zerops GUI: +You'll find internal PostgreSQL connection details in two places in the Zerops GUI: 1. Under the **Access details** button in the project dashboard 2. In the service detail page under the **Peek access details** button ### Connection Parameters -| Parameter | Description | -| --------------------- | --------------------------------------------------------------------- | -| **Hostname** | Identical to the service hostname | -| **Port** | **5432** (fixed for all PostgreSQL services) | -| **User** | Identical to the service hostname | -| **Password** | Randomly generated during service creation | -| **Connection string** | `postgresql://${user}:${password}@{hostname}:5432` | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterInternal ConnectionDirect IP Access (TLS)
Hostname/IPService hostnamePublic IP address
Port54326432
UserIdentical to the service hostnameSame as internal
PasswordRandomly generated during service creationSame as internal
Port env variable`port``portTls`
Connection string env variable`connectionString``connectionTlsString`
:::warning Zerops creates a system user named `zps` with full privileges for maintenance purposes. Do not delete, change the password, or remove privileges from this user, as it will disrupt Zerops' ability to maintain the database cluster. @@ -37403,6 +37361,10 @@ For more details on how to use environment variables, and instructions for addin ## Connect Remotely +Zerops offers two methods for connecting to your PostgreSQL database from outside the Zerops environment: + +### Method 1: Connect via Zerops VPN + You can securely connect to PostgreSQL from your local workstation via Zerops VPN: 1. [Install & set up zCLI](/references/cli) @@ -37415,6 +37377,25 @@ You can securely connect to PostgreSQL from your local workstation via Zerops VP * If your connection over VPN doesn't work, try adding `.zerops` suffix to the service hostname (e.g., `database1.zerops`). For additional help, check the [VPN troubleshooting page](/references/vpn/troubleshooting). ::: +### Method 2: Connect via Direct IP Access + +Direct IP Access uses [pgBouncer](https://www.pgbouncer.org/) for connection pooling and TLS termination. + +Internally, port `5432` is available without SSL. Externally, connections are secured with TLS through pgBouncer (port `6432`) before being routed to your PostgreSQL service. + +#### Enable external access + +1. Navigate to your PostgreSQL service in the Zerops GUI and choose the **Public Access through IP Addresses** section +2. Choose either IPv6 (available by default) or IPv4 (requires the [unique IPv4](/features/access#dedicated-ipv4-address-330-days) add-on) +3. Open one or more ports and point them to your PostgreSQL service (the system will direct them through pgBouncer) + - Choose any port from 10-65435 (except 80 and 443) + - Select destination service and internal port + - Each public port can be mapped to any internal service port + - Multiple public ports can point to the same internal port if needed + - Port configurations can be set independently for IPv4 and IPv6 +4. Optionally enable firewall protection for additional security +5. Click the **Publish X IP access change(s)** button to apply your settings + For database management tools and how to manage users and databases, see [Manage PostgreSQL Users and Databases](/postgresql/how-to/manage).