Note

You are viewing the documentation for an older release of Interworx (8.1). To see documentation for the current generally available release of Interworx, click here: 8.2.

How To: Install InterWorx Control Panel

Note

Minimum server requirements, supported VPS systems, and supported operating system information can be found here.

Warning

InterWorx does not support containerized environments, including Docker or LXC.

Note

While InterWorx will install and work on both Digital Ocean and Azure, both of those services block port 25, which is the port that the mail service included with InterWorx (Qmail) uses. An outside mail provider will be required in those environments.

Prerequisites

  1. A server or supported VPS system, with at least the minimum supported hardware configuration

  2. A clean install of one of the supported operating systems. Please note: for new installs, the most up-to-date version of each OS is required

  3. A valid active InterWorx Control Panel license key

  4. UIDs 102 → 107 and GIDs 102 and 103 must be free for use. The build of the qmail MTA the InterWorx Control Panel uses requires these UID/GIDs to be available

If using Red Hat Enterprise Linux 8 (RHEL8) the follow commands may need to be run to enable the required dependency repos:

subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

If using Red Hat Enterprise Linux 9 (RHEL9) the follow commands may need to be run to enable the required dependency repos:

subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm

InterWorx Install Script Overview

The current list of installed packages can always be found on the updates.interworx.com RPM repository, located at http://updates.interworx.com/iworx/RPMS/. The repository is indexed by distribution.

Supplemental software packages are also available as SRPMS, which are located at http://updates.interworx.com/iworx/SRPMS/

InterWorx is installed via a bash script which makes the following changes to the server:

  1. Deactivates SELINUX

  2. Moves /home/ to /chroot/home/, if /home is not on its own partition. It then symlinks /chroot/home/ to /home

  3. Uninstalls any conflicting RPM packages that are initially installed on the server, using yum

  4. Installs InterWorx and its supporting software, using yum

    Quotas must be enabled manually, and it is not part of the InterWorx installation script.

    Instructions on how to enable quotas can be found here

  5. The installation script also updates the server PHP and MySQL or MariaDB versions to the latest stable versions available. This can be changed using the -m or-p flag when running the install script. More detailed information is found below

The install script has a few optional parameters that can be useful for installation in advanced environments, including specifying MySQL and PHP versions, and installation repo. Those options can be found using the -h flag with the installation script:

[root@server ~]# sh <((curl -sL updates.interworx.com/interworx/8/install.sh)) -h

Usage: iworx-cp-install.sh [-s rpm/ks server hostname] [-s server] [-d] [-f] [-u] [-k] [-l] [-i] [-h]
    -s RPM server
       Specify a different rpm host to grab src.rpm/rpms from
       (default: updates.interworx.com).
    -d Turn debugging on (you'll have to hit enter sometimes.
       to keep things moving, output is halted so you can see it).
    -f FORCE installation even if the distro isn't supported.
    -u Perform a "yum update" prior to installation of
       InterWorx-CP.
    -k Force the removal of any conflicting packages that will
       interrupt the InterWorx-CP install.
    -l Run in headless mode.  No prompting will occur.
    -r Choose an interworx repository to enable. default: release.
       (release,alpha,beta,release-candidate,stable)
    -i Install all packages *except* InterWorx-CP itself.
    -m Maria DB version to use. Specify "system" to use the version available via yum
    -p PHP version to use. Specify "system" to use the version available via yum
    -v Verbose output.
    -h Show this help message."

[root@server ~]#

Note

Running the InterWorx installation script within a Linux screen session is recommended. Screen creates a shell session that continues to stay active, even if there is network disruption. Detailed information on using screen can be found here.

  • To determine whether screen is installed on the system, run which screen.

    • If screen is installed, the system will return /usr/bin/screen

    • If screen is not already installed, it can be installed by running yum install screen

To run the InterWorx script from within a screen session, type the word screen  at the command line. Then, run the InterWorx installation command.

If the session disconnects, log back in at the command line and typescreen -r. This will reconnect the screen session.

How to Install InterWorx 8

Note

InterWorx 8 can be installed on EL8 and EL9 servers.

If setting up a node for an existing Interworx cluster, it is highly recommended to use same version as the rest of the servers in the cluster.

  1. Log in to the server at the command line as root, either via SSH or from the terminal

  2. Download and run the installer: sh <((curl -sL updates.interworx.com/interworx/8/install.sh))

  3. Alternatively, download and run the installer with no prompting: sh <((curl -sL updates.interworx.com/interworx/8/install.sh)) -l

  4. Reboot the server

How to install InterWorx 7

Note

InterWorx 7 can only be installed on EL8 servers.

If setting up a node for an existing Interworx cluster, it is highly recommended to use same version as the rest of the servers in the cluster.

  1. Log in to the server at the command line as root, either via SSH or from the terminal

  2. Download and run the installer: sh <((curl -sL updates.interworx.com/interworx/7/install.sh))

  3. Alternatively, download and run the installer with no prompting: sh <((curl -sL updates.interworx.com/interworx/7/install.sh)) -l

  4. Reboot the server

Next Steps

After installing InterWorx, the next step is to activate the license. The license activation script also sets up the master NodeWorx user account.

Instructions on how to activate the InterWorx license can be found here.

Activating the license via the CLI is strongly recommended, as it provides more detailed output if any issues arise than via the browser.

Troubleshooting

Conflicting Packages

If package conflicts between the packages being installed and those that are already on the system occurs, keep an eye on the output for conflict errors, and remove any conflicting packages that are reported. After the conflicts are removed, simply re-run the installer and it will continue where it left off.

The installer will try to remove packages preemptively, as well, (and prompt where necessary before it removes anything).