Neptune DXP - Open Edition installation – Neptune DXP Cloud

For installing the Neptune DXP - Open Edition, you need to log in to the Neptune DXP Portal and create your own Instance there.

Just follow this step-by-step guideline:

Or you wish to install your Neptune DXP - Open Edition on premise. Get to our Neptune DXP Portal and download the latest version and install it on your server. You’ll find an installation guide in the downloaded zip folder.

Prerequisites for a new Installation

Database

All data, ranging from your configuration, apps and application data are persisted in the Open Edition database. By default, the embedded SQLite database is configured and used. There is also support for PostgreSQL (and more to come).

If you switch between databases, all data present in the previous database shall not be available anymore within the Open Edition installation. Therefore, it is advised, when you set up the new Neptune DXP - Open Edition installation to first, above all, configure your database (Settings > System > Database), restart the Open Edition and then do all other configuration.

PostgreSQL

If you are planning on using the PostgreSQL database, you need to create a new database the first time and a corresponding schema (exactly as written below):

sap postgresql

On initialization, the Neptune DXP - Open Edition will create all the needed tables under this schema. For the default SQLite database, nothing is needed.

npm

To be able to install and use NPM modules in the Open Edition, you have to make sure that NPM is installed on your machine.

Installation and Upgrade

Extract the ZIP file and move the Neptune DXP - Open Edition server file and the SQLite file to your preferred directory. For upgrade you replace the existing Neptune DXP - Open Edition server file with the new one.

  • Mac/Linux, if the file is not executable:

    • Open terminal

    • "cd <path to open-edition>"

    • "chmod +x ./planet9-macos"

  • Normal startup – also when you start the Neptune DXP - Open Edition the first time

    • Linux

      • "planet9-linux"

    • Windows

      • "planet9-win"

    • Mac

      • "planet9-macos"

  • When you upgrade, start with these parameters

    • Linux

      • "planet9-linux --upgrade"

    • Windows

      • "planet9-win --upgrade"

    • Mac

      • "planet9-macos --upgrade"

Installation on Mac

After the download is finished, open the download folder and check the filename. There are some issues with Safari. The Browser adds ".dms" to the filename. Rename the file and delete the extensions .dms .

Open Console and go to the folder where the file is located. Then make a command with: "chmod +x ./planet9-macos"

Post Upgrade Activities

  • Check for Launchpad updates in the Store and download new version if available.

  • Start Cockpit→Security→Role and check ACL for new functions delivered in the new

Defaults

When the Open Edition is started, open a browser and navigate to the URL corresponding to your server:

Running in Production

When you deploy an Open Edition instance on a remote system, there are some concerns to be addressed.

  • You should not run the Open Edition instance as a “admin”, “root” or any other super admin- type privileged user.

  • As the Open Edition instance should not run as any super admin-type of user, the Open Edition probably (depending OS) is not be able to bind by default to port 80 (HTTP) or 443 (HTTPS). To bind the Open Edition9 to these default ports, we advise to use a web server like NGINX which can bind to port 80 and 443 that forwards requests to the Open Edition instance. You can also use NGINX to cache any media request, so less load is put on the Open Edition instance for serving static assets like images. NGINX has a free open source version available for commercial use.

  • We advise to create a folder where all your custom NPM modules will be installed, after you’ve created this folder, configure the Open Edition instance to use this folder in “settings > Customizing > General”.

Running on an external system

If you want to run it on a remote system, you need to be able to disconnect from the system If you want to run it on a remote system, you need to be able to disconnect from the system without detaching (and killing) the process. There are 2 ways to do this:

  • Fork it so that it can run as a background process or run as a service. The benefit of running as a service is that the Open Edition instance can restart in the event of an Open Edition application crash and auto start on bootup. Do make sure that the Open Edition service then runs with a user that can access the custom NPM folder, has the path to NPM set, and you have allowed the proper permissions for the Open Edition executable (see installation steps). Here´s an example configuration for a linux service:

[Unit]
Description=Open Edition

[Service]
ExecStart=/var/planet9/planet9-linux
Restart=always
User=MyUser
Group=nobody
# Notice the NPM path
Environment=PATH=/home/MyUser/.nvm/versions/node/v10.16.3/bin:/u
sr/bin:/usr/local/bin
Environment=NODE_ENV=production
WorkingDirectory=/var/planet9

[Install]
WantedBy=multi-user.target
  • The other way is to use a terminal multiplexer like “screen” or “TMUX” (please see below).

TMUX

Here is a quick guide of how to do this using tmux on linux:

  • Start tmux the first time: tmux

  • Start the Open Edition. From this point on, even if you are disconnected from the server, it will continue running

  • When you are done, you can disconnect from tmux: c-b d (or c-space d). d stands for disconnect

  • The next time you connect and want to continue where you were, enter the server, type tmux ls to see the running tmux sessions, and type tmux attach to attach to it

Note that you can run the Open Edition without doing this, but as soon as you lose the connection to the remote system, the parent process will die, and only the forked system processes will continue running (so you won’t see the systems processes running inside the Open Edition etc).

Install TMUX – Linux

sudo yum install tmux