Home → Architecture → Airgap deployment
Ironmark supports installation on disconnected networks. The application sends no telemetry, performs no license phone-home, and makes no outbound application connection by default. Offline installation still requires the target operating-system dependencies to be present in the bundle, staged in an internal repository, or installed by the customer before setup.
The release bundle contains the Ironmark application and its bundled application dependencies. A detached signature can be verified before installation. Operating-system packages must be staged for the target environment; do not assume that every clean Debian or Ubuntu image can be installed offline without customer preparation.
| Application | Backend + frontend + SDM packages |
| Python wheels | ~60 wheels prebuilt for manylinux2014_x86_64. No pip network fetch required. |
| System deps | MySQL 8, nginx, and other operating-system packages are installed from customer-accessible package sources or staged .deb files. Java and Apache FOP are optional and needed only when that external FO backend is selected. |
| Setup script | install.sh handles user creation, MySQL init, systemd unit install, nginx config, and cert setup |
Same script for airgap and connected installs. The connected path optionally uses Let's Encrypt; airgap uses a self-signed or customer-supplied cert.
/opt/ironmark/setup./install.sh — installs deb deps from the bundle, sets up MySQL, deploys the app, configures nginx, seeds a fresh DBInstallation time depends on the prepared host, package staging, certificate path, database state, and the customer's change-control process.
Same bundle format. Two update paths:
install.sh --upgrade path used for the initial install. Preserves data + DB.Both paths verify the bundle's detached signature against the customer's installed pubkey. Unsigned or tampered bundles are rejected at the load stage.
Licenses are signed .irm files issued by the vendor. Customer installs verify against the license pubkey, offline, at boot and periodically. On expiry, reads and exports keep working; publish is gated until renewal. No phone-home for enforcement.
mysqldump against the ironmark schema. Restore with mysql./opt/ironmark/app/data/ holds project graphics, imported IADS DTDs, reference docs, and outputs. Rsync-friendly.