Dutch customers only: When ordering your Hypernode trial, you can choose between a Magento 1 or 2 pre-installation. You only need this page if you are upgrading from Magento 1, or if you want to re-install Magento 2.

Magento 2 requires preferably a Magento Grow hosting plan or bigger. Want to install Magento 1 instead?

Installing Magento 2 will take only 5-10 minutes (add 15 minutes if you want the sample data).

Upgrade your PHP version

Before installing Magento, change your PHP version to php7.1 or higher

Some vendor libraries are not compatible with older PHP version anymore, causing errors during the installation.
Therefor you must first change your PHP version to PHP7.1 before starting the Magento 2 installation.

Remove existing Magento 1 installation (if any)

This is obviously only required if you have a previous Magento 1 installation. Log in to your Hypernode and run this command:

This will delete the default database (such as shop_preinstalled_magento), and recursively delete the /data/web/public directory. Any instances of Magento installed in other directories will not be touched.

Activate Magento 2 mode

Hypernode will activate all kinds of Magento 2 cleverness when you activate M2 mode. This happens if you create a file called /data/web/nginx/magento2.flag:

NEW: Install our Pre-installed Magento 2 version with ONE command

Using the command hypernode-systemctl preinstall [preinstall_type], the installation is automatically installed. The current supported preinstall_types are magento1, magento2, akeneo3.2 and akeneo4.0. By adding --sample-data as an argument we install the version with sample data . Take a look at the livelog command to check the progress on the update job.

Please be aware that this does not set the general Hypernode settings (php, mysql) to the proper values. This still needs to happen manually. In addition, for Magento make sure the /data/web/public folder is empty.

Install Magento 2 manually using the command line

Download and unzip the latest release to /data/web/magento2:

Create a database (In this example, we named the database ‘magento2’, but you can name it however you like):

Enable the Magento 2 management tool:

Almost done! Look up your database credentials

Fill in the user, hostname and password in the following command and you are ready to install Magento 2:

Enable secure document root

Build static assets (CSS & JS)

Alternatively you can deploy only the static content for a single theme:

Or for a single language:

A secure, random Magento admin URL will be created for you and printed. Bookmark it for future access.

Congratulations, Magento 2 is installed on your Hypernode!

Want to install sample data too?

Login at the Magento Marketplace with your account. Go to the top right => My Profile => Under Marketplace => Access Keys. Create a new access key. Copy your public key (username) and private key (password).

enter your public and private key when asked for user and password
when asked to save to a location, the default is fine

this is required due to a bug: https://github.com/magento/magento2/issues/2523

This action will take about 10-15 minutes

Configure your Magento 2 cron

After installing Magento, configure your cron by adding these scripts to your crontab file:


  • I’m getting the error:
    PHP Parse error: syntax error, unexpected '.' in /data/web/magento2/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 93
    This is caused by the php version. Upgrade from php5 to php7 as not all vendor libraries are php5 compatible anymore.

  • Web Setup Wizard is not visible:
    Check/Recreate the symlinks on your Hypernode:
    mv /data/web/public /data/web/public_OLD
    mkdir /data/web/public
    ln -fs /data/web/magento2/pub/* /data/web/public
    ln -fs /data/web/magento2/setup/ /data/web/public/
    cd ~/magento2/
    magerun2 cache:flush

  • I’m getting out-of-memory errors:

  • If you are running on a Start plan: Upgrade to a bigger hypernode with more memory available.
  • If this happens while you are running a setup:static-content:deploy: Try deploying static content per language or per theme rather then all at once.