Skip to content

[Doc] Mention multiple domain possible ploomber.app & ploomberapp.io #303

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Dec 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions doc/apps/dash.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,6 @@ By default applications run with Python 3.11. Refer to this [section](../faq/faq

:::{grid-item-card} Clinical analytics
[![](../../examples/dash/clinical-analytics/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/dash/clinical-analytics)
+++
[Live demo](https://delicate-cake-9107.ploomberapp.io)
:::

::::
2 changes: 0 additions & 2 deletions doc/apps/flask.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,8 +133,6 @@ A basic Flask app.

:::{grid-item-card} User auth
[![](../../examples/flask/login/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/flask/login)
+++
[Live demo](https://empty-haze-3369.ploomberapp.io)
:::

:::{grid-item-card} ML inference
Expand Down
8 changes: 4 additions & 4 deletions doc/apps/jupyterlab.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ And you're ready to use JupyterLab!

## Real-time collaboration

Collaboration is configured by default! Share your `id.ploomberapp.io` URL with a colleague, the password, and open the same notebook, you'll get Google Doc-like collaboration!
Collaboration is configured by default! Share your URL with a colleague (it'll be using either `id.ploomber.app` or `id.ploomberapp.io`), the password, and open the same notebook, you'll get Google Doc-like collaboration!


![](../static/docker/jupyterlab/jupyter-collab.gif)
Expand Down Expand Up @@ -122,7 +122,7 @@ python -c 'import secrets; print(secrets.token_urlsafe())'
Copy the printed value (store it somewhere safe) and save it as a [secret](../user-guide/secrets.md), with
the name `KG_AUTH_TOKEN`, now click on `CREATE`.

Once the application is running, copy the URL (the `someid.ploomberapp.io` URL):
Once the application is running, copy the URL (either `someid.ploomber.app` or `someid.ploomberapp.io`):

![](../static/docker/mlflow/host.png)

Expand All @@ -132,10 +132,10 @@ We can connect to the remote kernel. Install JupyterLab locally:
pip install jupyterlab
```

And initialize it with your `someid.ploomberapp.io` URL and the token you set earlier:
And initialize it with your either `someid.ploomber.app` or `someid.ploomberapp.io` URL and the token you set earlier:

```sh
GATEWAY_HOST=someid.ploomberapp.io
GATEWAY_HOST=someid.ploomberapp.io # Should match your app domain (ploomber.app OR ploomberapp.io)
TOKEN=sometoken
jupyter lab --gateway-url=$GATEWAY_HOST --GatewayClient.auth_token=$TOKEN
```
Expand Down
13 changes: 10 additions & 3 deletions doc/apps/mlflow.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,10 @@ And run the following in a Python session:
import requests
from getpass import getpass

host = input("Enter your {id}.ploomberapp.io URL: ")
# Notes:
# - We're gradually migrating from id.ploomberapp.io to id.ploomber.app
# - Modify this value to match your host
host = input("Enter your {id}.ploomberapp.io URL: ")
password_new = getpass("Enter new password:")

response = requests.patch(
Expand All @@ -105,7 +108,7 @@ response.raise_for_status()
print("Your new password is:", password_new)
```

You'll be prompted for your MLflow host (e.g., `something.ploomberapp.io`), you can
You'll be prompted for your MLflow host (e.g., either `id.ploomber.app` or `id.ploomberapp.io`), you can
get this from the Ploomber UI:

![](../static/docker/mlflow/host.png)
Expand Down Expand Up @@ -134,6 +137,10 @@ And run the following (replace the `set_tracking_uri` call with your host!):

```python
import mlflow

# Notes:
# - We're gradually migrating from id.ploomberapp.io to id.ploomber.app
# - Modify this value to match your host
mlflow.set_tracking_uri(uri="https://someid.ploomberapp.io")

mlflow.set_experiment("first-experiment")
Expand All @@ -149,4 +156,4 @@ If all goes well, you'll see:
2024/03/12 19:44:39 INFO mlflow.tracking.fluent: Experiment with name 'first-experiment' does not exist. Creating a new experiment.
```

And the experiment will be visible from MLflow's dashboard.
And the experiment will be visible from MLflow's dashboard.
6 changes: 0 additions & 6 deletions doc/apps/panel.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,6 @@ By default applications run with Python 3.11. Refer to this [section](../faq/faq

:::{grid-item-card} Book recommender
[![](../../examples/panel/book-recommender/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/panel/book-recommender)
+++
[Live demo](https://gentle-frost-8296.ploomberapp.io)
:::

:::{grid-item-card} Chat with PDF
Expand All @@ -167,8 +165,6 @@ By default applications run with Python 3.11. Refer to this [section](../faq/faq

:::{grid-item-card} Customer Chatbot
[![](../../examples/panel/customer-chatbot/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/panel/customer-chatbot)
+++
[Live demo](https://black-poetry-5215.ploomberapp.io)
:::

:::{grid-item-card} Multi Page App
Expand All @@ -178,8 +174,6 @@ By default applications run with Python 3.11. Refer to this [section](../faq/faq
:::{grid-item-card} Wine Data Postgres App
:link: https://github.com/ploomber/doc/tree/main/examples/panel/app-with-postgres
![](https://github.com/ploomber/doc/raw/main/examples/panel/app-with-postgres/app.png)
+++
[Live demo](https://panel-postgres-demo.ploomberapp.io/app)
:::

::::
4 changes: 3 additions & 1 deletion doc/apps/vllm.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,9 @@ from openai import OpenAI
# we haven't configured authentication, so we just pass a dummy value
openai_api_key = "PUT_YOUR_API_KEY_HERE"

# modify this value to match your host, remember to add /v1 at the end
# Notes:
# - We're gradually migrating from id.ploomberapp.io to id.ploomber.app
# - Modify this value to match your host, remember to add /v1 at the end
openai_api_base = "https://autumn-snow-1380.ploomberapp.io/v1"

client = OpenAI(
Expand Down
6 changes: 0 additions & 6 deletions doc/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,20 +115,14 @@ Ploomber Cloud allows you to easily deploy apps. **Select a framework** to learn

:::{grid-item-card} Chatbots
[![](../examples/panel/book-recommender/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/panel/book-recommender)
+++
[Live demo](https://gentle-frost-8296.ploomberapp.io)
:::

:::{grid-item-card} Analytical dashboards
[![](../examples/dash/clinical-analytics/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/dash/clinical-analytics)
+++
[Live demo](https://delicate-cake-9107.ploomberapp.io)
:::

:::{grid-item-card} REST API
[![](../examples/flask/login/screenshot.webp)](https://github.com/ploomber/doc/tree/main/examples/flask/login)
+++
[Live demo](https://empty-haze-3369.ploomberapp.io)
:::

:::{grid-item-card} Machine Learning inference
Expand Down
2 changes: 1 addition & 1 deletion doc/user-guide/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -472,6 +472,6 @@ ploomber-cloud stop --project-id PROJECT_ID
```

Where `PROJECT_ID` is the randomly generated ID. If you did not set a custom name,
the `PROJECT_ID` is the string in the URL (`PROJECT_ID.ploomberapp.io`), if you set
the `PROJECT_ID` is the string in the URL (either `PROJECT_ID.ploomber.app` or `PROJECT_ID.ploomberapp.io`), if you set
a custom name, you can retrieve the `PROJECT_ID` by clicking on the ⚙️ icon next to the
URL in your app detailed view.
23 changes: 15 additions & 8 deletions doc/user-guide/custom-domains.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,18 @@
Custom domains/subdomains are only available to customers in the Pro, Teams and Enterprise plans.
```

By default, applications are available under `project-id.ploomberapp.io`, where `project-id` is a randomly generated string.
Each application gets a unique URL in the format `project-id.ploomber.app` or `project-id.ploomberapp.io`, where project-id is an automatically generated identifier.

```{important}
We are slowly migrating all new applications to `ploomber.app`, but some existing apps are still on `ploomberapp.io`.
```

You can customize the [`project-id`](custom-ploomber-subdomain) or bring your [own domain](custom-domain) or [custom subdomain](custom-subdomain).

(custom-ploomber-subdomain)=
## `{custom}.ploomberapp.io`
## `{custom}.ploomber.app` and `{custom}.ploomberapp.io`

If you would like a custom `ploomberapp.io` subdomain, like `my-custom-app.ploomberapp.io`, you can add it during application setup:
If you would like a custom `ploomber.app` or `ploomberapp.io` subdomain, like `my-custom-app.ploomberapp.io`, you can add it during application setup:

![](../static/custom-domains/custom-names.png)

Expand Down Expand Up @@ -40,11 +44,14 @@ A new window will display showing the DNS records you need to add ([see the upda

![](../static/custom-domains/pointing-change-dns-records.png)

```{important}
We are slowly migrating all new applications to `ploomber.app`, but some existing apps are still on `ploomberapp.io`. Make sure your DNS records match the domain associated with your application.
```

You must add three DNS records:

1. A `ALIAS` record: `@` as host, and `yourapp.ploomberapp.io` as value (replace `yourapp` with your actual app ID)
2. A `CNAME` record: `www` as host, and `yourapp.ploomberapp.io` as value (replace `yourapp` with your actual app ID)
1. A `ALIAS` record: `@` as host, and `yourapp.ploomberapp.io` (or `yourapp.ploomber.app`) as value (replace `yourapp` with your actual app ID)
2. A `CNAME` record: `www` as host, and `yourapp.ploomberapp.io` (or `yourapp.ploomber.app`) as value (replace `yourapp` with your actual app ID)
3. A `CNAME` record: with the shown **CNAME name** and **CNAME value** (as displayed in the **SSL certification status** section)

```{important}
Expand Down Expand Up @@ -103,7 +110,7 @@ A new window will display showing the DNS records you need to add ([see the upda

You must add two records:

1. `CNAME` record: the subdomain you want to add as the host (e.g., if you want to connect `subdomain.yourdomain.com`, then, you must enter `subdomain`) and `yourapp.ploomberapp.io` as value (where `yourapp` is the ID assigned to your application)
1. `CNAME` record: the subdomain you want to add as the host (e.g., if you want to connect `subdomain.yourdomain.com`, then, you must enter `subdomain`) and `yourapp.ploomberapp.io` (or `yourapp.ploomber.app` dependending on your application domain) as value (where `yourapp` is the ID assigned to your application)
2. `CNAME` record: with the shown **CNAME name** and **CNAME value** (as displayed in the **SSL certification status** section)


Expand Down Expand Up @@ -143,7 +150,7 @@ if you encounter errors, remove the root domain from the value. (see this


```{important}
DNS record changes might take up to 48 hours to take effect. In the meantime, your application will be accessible from the `ploomberapp.io` URL
DNS record changes might take up to 48 hours to take effect. In the meantime, your application will be accessible from the `ploomber.app` or `ploomberapp.io` URL
```

## Moving an existing domain/subdomain to another app
Expand Down Expand Up @@ -190,7 +197,7 @@ These are the most common errors.

![](../static/custom-domains/domains-server-not-found.png)

You'll see this error if you're missing the DNAME record that points from your domain (or subdomain) to the `ID.ploomberapp.io` URL, ensure you add it. Give it some time since DNS records take some time to update. If issues persist, contact us at [[email protected]](mailto:[email protected]).
You'll see this error if you're missing the DNAME record that points from your domain (or subdomain) to the `ID.ploomber.app` or `ID.ploomberapp.io` URL (depending on your application domain), ensure you add it. Give it some time since DNS records take some time to update. If issues persist, contact us at [[email protected]](mailto:[email protected]).


### Potential Security Risk Ahead
Expand Down
10 changes: 7 additions & 3 deletions doc/user-guide/password.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,12 +161,16 @@ edit it by updating the `.env` file. This secret is used to sign your session to
(auth0-urls)=
### Set `/callback` and `/status` URLs

Almost done! We just need to set the `/callback` and `/status` URLs for your Auth0 app. Navigate to your Ploomber project's application page and copy the application URL. It should look like `https://application-name-1999.ploomberapp.io`.
Almost done! We just need to set the `/callback` and `/status` URLs for your Auth0 app. Navigate to your Ploomber project's application page and copy the application URL. It should look like `https://application-name-1999.ploomber.app` or `https://application-name-1999.ploomberapp.io` (depending on your application domain).

Now, go back to the Auth0 application page and scroll down to `Application URIs`. Set these values:

- Allowed Callback URLs: `https://application-name-1999.ploomberapp.io/callback`
- Allows Logout URLs: `https://application-name-1999.ploomberapp.io/status`
- Allowed Callback URLs: `https://application-name-1999.ploomber.app/callback`
- Allows Logout URLs: `https://application-name-1999.ploomber.app/status`

```{important}
We are slowly migrating all new applications to `ploomber.app`, but some existing apps are still on `ploomberapp.io`. Make sure your URLs match the domain associated with your application.
```

It should look like this:

Expand Down
Loading