Fully offline installation
This section applies to installing Dash Enterprise on a single server in a fully offline environment.
Dash Enterprise supports fully offline installations (a.k.a. airgapped
installations), with some limitations in deploying Dash apps (described in Dash app limitations in offline mode)).
Apart from Internet access, the server requirements for a fully offline installation are the same as for a normal installation on your own hardware, as well as:
A supported version of Docker and the Server Manager installed on your server (described here)
A link to the Dash Enterprise
airgapped
installation package, provided to you by the Plotly sales team
Dash app limitations in offline mode
These are currently known limitations with how Dash apps work offline and may be addressed in a future Dash Deployment Server release:
All Python packages, including Dash libraries and their dependencies, must be available via a private PyPI repository specified in the app’s requirements.txt
Only Python versions 2.7.9 - 2.7.16 and 3.6.0 - 3.6.10 are supported
If another version is listed in your runtime.txt, the app build will hang or fail
Only
Conda
runtimesMiniconda2-4.5.12
andMiniconda3-4.5.12
are supportedIf another version is listed in your
conda-runtime.txt
, the app build will hang or fail
All Python dependencies must be installed via requirements.txt or via
Conda
Pipfile
andnltk.txt
are not supported.
hg+ and git+ requirements are not supported
Prepare the environment
Install Docker
We recommend you use the most recent version of Docker supported by your operating system. These operating systems and corresponding Docker versions are known to work together:
CentOS/RHEL systems have some dependencies for installing Docker. You will typically need the following packages:
container-selinux-2.74-1.el7.noarch.rpm
containerd.io-1.4.11-3.1.el7.x86_64.rpm
docker-ce-cli-19.03.15-3.el7.x86_64.rpm
docker-ce-19.03.15-3.el7.x86_64.rpm
If you need to use a different operating system and/or Docker version, please contact Plotly support for assistance.
Download the correct Docker package for your needs, plus any dependencies, and transfer those files to your server
If the server has access to a local yum or apt repository, you can use yum or apt to install dependencies from that repository instead of manually installing them
Install Docker using one of the following commands:
Additional Docker setup for CentOS 7/RHEL 7 systems
After installing Docker, increase the default devicemapper
base device size as follows:
Add the following line to
/etc/default/docker
:
If an uncommented DOCKER_OPTS
line already exists, append the following string to it instead of adding a new line: --storage-opt dm.basesize=20G
Restart Docker
Install the Server Manager
The Server Manager is a web-based console where you can manage your Dash Enterprise instance’s settings, as well as perform upgrades and start/stop the application. This component is normally installed automatically when using an online installation process, but when working offline, must be installed separately as follows:
On an Internet-capable machine, download the latest Server Manager release from https://s3.amazonaws.com/replicated-airgap-work/stable/replicated-2.52.0%2B2.52.0%2B2.52.0.tar.gz and transfer it to your destination server.
In a terminal, run the following commands:
Once installed, the Server Manager is available on port 8800 of your server’s IP or base domain (e.g. https://12.34.56.789:8800 or [https://plotly.your-company.com:8800](https://plotly.your-company.com:8800%29).
Create the Plotly data directory
This directory will hold all of the Dash Enterprise data, such as configuration, apps, databases, logs, and other files. You can name this directory anything, but we recommend /plotly
for consistency with other installation types and the rest of this documentation.
Download, rename and copy the installation package
Use the download link and password provided to you by Plotly to download an
airgap
installation package. Set the--trust-server-names
flag forwget
. Alternatively, rename the file to something ending with.airgap
.Copy the package to your server and note the path you copied it to.
Install
Browse to the Server Manager on port
8800
of your base domain.
You will see an untrusted connection warning; this is expected and not a reason for concern
Accept the initial self-signed certificate and enter the Hostname of your server.
If you have a CA-issued TLS/SSL certificate and the corresponding key, select them here and choose Upload & Continue.
Otherwise, choose Use Self-Signed Cert and accept the new certificate generated.
Click Choose License and select the license (
.rli
) file provided to you by the Plotly sales team.Choose Airgapped as the installation type and click Continue.
Enter the full path to the
airgap
package file you copied here and click Continue.
Your server is now ready to be configured.
Installing Dash Enterprise packages
The images used to build Dash applications on the Dash Enterprise server are configured to install Plotly-hosted Dash dependencies, such as Dash Design Kit, via an internal repository located at https://PLOTLY_DASH_DOMAIN_BASE/Docs/packages/
.
PLOTLY_DASH_DOMAIN_BASE
is the Dash Enterprise server’s DNS name. Additional consideration is often needed on airgapped
environments to reach the packages hosted at this endpoint. If PLOTLY_DASH_DOMAIN_BASE
is configured to be the public IP of the host and if this IP is unreachable from the host itself, we have identified two workarounds:
Change the Dash Domain DNS entry to the private IP of the host, then use a proxy server to reach your host from a browser; or
Download any needed packages from
https://PLOTLY_DASH_DOMAIN_BASE/Docs/packages/
and transfer them to an internal Python package repository that can be reached from your instance.
Last updated