Skip to main content

Install on a Linux server

The offline bundle installs DataFactory on one Linux server with Docker. Every container image is inside the bundle, so the server needs no internet access.

What you need​

MinimumNotes
OSRHEL, Rocky or Alma 8 or 9, Ubuntu 22.04 or 24.04, Amazon Linux 2023x86_64
CPU / memory4 vCPU / 16 GB8 vCPU / 32 GB for large Bloom runs
Disk50 GB for data, 10 GB for imagesData goes in /var/lib/datafactory by default
DockerEngine 24 or later, with the Compose v2 pluginEnov8 can supply an offline Docker bundle for RHEL 9
Accessroot (sudo)
Optionalpython3 (at /usr/bin/python3) and systemdNeeded for Admin → System, the watchdog and starting at boot
OptionalA PEM certificate and unencrypted key for the host nameOtherwise a self-signed certificate is generated

Network. Users reach the server on port 443; port 80 redirects to it. The server needs outbound access only to the databases your users connect to, plus your identity provider and AI endpoint if you use them.

On a cloud VM (Amazon EC2, Azure, Google Cloud), the same steps apply:

  • Use at least 4 vCPU and 16 GB, such as EC2 m6i.xlarge or Azure D4s_v5; 8 vCPU and 32 GB (m6i.2xlarge, D8s_v5) for large Bloom runs.
  • Attach a separate data disk of at least 50 GB, mounted at /var/lib/datafactory, and snapshot it.
  • Allow inbound 443 (and 80) from your users only, and outbound to your databases.

1. Get the bundle onto the server​

Enov8 sends you a download link for the bundle. Download it, copy it to the server through your usual transfer process, then extract it:

tar -xzf data-factory-<version>-linux-amd64-release.tar.gz
cd data-factory-<version>

The installer checks every file in the bundle and stops if anything has changed.

2. Check the server​

sudo ./preflight.sh

It reports the OS, Docker and Compose versions, CPU, memory, disk and free ports, and changes nothing. Add -p, -P or -L if you'll install on other ports or another data folder.

3. Install​

With your certificate and licence:

sudo ./install.sh -n datafactory.example.com -c /path/cert.pem -k /path/key.pem -b /path/chain.pem -l /path/acme.licence

Other ways to install:

SituationCommand
No certificate yet (a self-signed one is generated)sudo ./install.sh -n datafactory.example.com
TLS ends at your load balancer or reverse proxysudo ./install.sh -n datafactory.example.com -T -p 8080
Other foldersadd -d /opt/datafactory -L /data/datafactory
Other portsadd -p 8080 -P 8443
Sign in as admin / admin and change it at first sign-inadd -D
Write the admin password to a file instead of the screenadd -A /root/df-admin.txt (not with -D)
All installer options
OptionWhat it does
-n HOSTHost name users browse to (default: this server's FQDN)
-d DIRInstall folder (default /opt/datafactory)
-L DIRData folder for the database and files (default /var/lib/datafactory)
-c FILE / -k FILETLS certificate and its private key (PEM, unencrypted key). Use both, or neither for a self-signed certificate.
-b FILEIntermediate certificates (PEM, optional)
-TTLS ends at a load balancer in front of this server: serve HTTP only and trust its X-Forwarded-For
-l FILELicence file from Enov8. You can also add it later in the app.
-p PORT / -P PORTHTTP and HTTPS ports (default 80 and 443)
-SSkip the preflight checks
-yDon't ask for confirmation
-A FILEWrite the first admin password to this file (mode 600)
-DDefault admin admin / admin, which must be changed at first sign-in

The installer:

  1. checks the bundle and loads the images into Docker;
  2. generates every secret into /opt/datafactory/.env (mode 600);
  3. starts the services and waits until they're all healthy (up to 10 minutes);
  4. installs two systemd services: datafactory starts DataFactory at boot, and datafactory-agent serves Admin → System and restarts a service that stays unhealthy;
  5. prints the web address and the admin sign-in.

If DataFactory is already installed, it stops.

Keep a copy of /opt/datafactory/.env

It holds CREDENTIALS_ENCRYPTION_KEY. Saved database passwords can't be read without it. Store a copy in your password manager.

4. Sign in and add the licence​

  1. Browse to https://<host>/ and sign in as admin with the password the installer printed (or admin with -D).
  2. Choose your own password.
  3. If you didn't use -l, the Licence page opens: paste the licence from Enov8 and click Install. Until then DataFactory is read-only. See Licence.
  4. Open Admin → System and check every service is healthy.

Next​