Creating a Staging Dash App

This documentation is for Dash Enterprise.
Dash Enterprise is the fastest way to write & deploy Dash apps and
Jupyter notebooks.
10% of the Fortune 500 uses Dash Enterprise to productionize AI and
data science apps. Find out if your company is using Dash Enterprise.

Once you have deployed your Dash app to Dash Enterprise, your end users will expect that
it is stable and ready for consumption. So, what do you do if you want to
test out or share some changes on the server? We recommend creating
separate apps: one for production consumption and another one
for testing, often called staging. You’ll use your staging app to preview changes
before making those changes to the production app.

To set up a new staging app:

  1. Initialize the staging app in Dash Enterprise. We recommend giving it the same name as your
    production app but appending “-stage” to it (for example, “analytics-stage”).

  2. In your terminal, go to the folder containing the files for your production app:
    shell $ cd <folder-name>
    where <folder-name> is the name of the folder.

  3. Add a new Git remote that points to the staging app you initialized. It’s important that this remote have a different name
    than what your production app uses. We recommend naming the remote “stage”:
    shell $ git add remote stage <remote-url>
    where <remote-url> is the Git remote URL displayed in your staging app’s Overview in Dash Enterprise. The URL changes depending on whether you’re deploying over HTTPS or SSH, so be sure to select the right protocol before you copy the URL.

  4. Deploy the staging app like you would any other app, but use its remote name in the git push command. For example, git push stage main.

If your production app uses the default plotly remote name, your workflow might look like: Run git push stage main to deploy your staging app → Visit your staging app on Dash Enterprise to preview your changes →
Run git push plotly main to deploy your production app.