Get Started with Nx Private Cloud Enterprise

The Enterprise edition of Nx Private Cloud is a docker image that can be deployed to your cloud. Enterprise edition keeps all data on your cloud, including for billing and utilization data. For companies who need complete control of data, with no external API calls, the Enterprise edition of Nx Private Cloud is for you.

Running Nx Private Cloud (Enterprise)

Step 1: Obtain the License Key

Fill in this form to obtain a license key.

Step 2: Pull the Image

> docker pull nxprivatecloud/nxcloud

To update the version of Nx Private Cloud, pull the new version of the image and run it against the same mount (see below).

Step 3: Create a Container

Depending on how your infrastructure is set up, you can either run Nx Private Cloud using HTTPS or HTTP. If you have a proxy in front of Nx Cloud, you will likely want to run Nx Private Cloud using HTTP (the proxy will handle SSL). Otherwise, you will likely want to run Nx Private Cloud using HTTPS.

To create a container:

  1. You will need to create a directory on the host machine where data will be stored (This is not necessary if you are running mongo yourself. See below.).

    • If you are running Nx Private Cloud on the Amazon infrastructure, you might want to use EFS for that.

  2. You will need to know the URL that the private cloud can be accessed by (see NX_CLOUD_APP_URL below).

    • NX_CLOUD_APP_URL should be accessible from your CI and dev machines.

    • NX_CLOUD_APP_URL can still contain HTTPS even though you run Nx Private Cloud using HTTP. In this case the url will point to the proxy.

  3. If you are running Nx Private Cloud using HTTPS, you need to generate or obtain an SSL certificate and an SSL private key.

Once you obtain all the needed information, you can run the following:

Using HTTPS

> docker create --name cloud \ -p 443:8081 \ -e LICENSE_KEY=JKLSJKJFSLKFHH8499232PQITDg8pQ= -e NX_CLOUD_MODE=private-enterprise \ -e CERT_KEY="$(cat ./tools/certs/key.pem)" \ -e CERT="$(cat ./tools/certs/cert.pem)" \ -e NX_CLOUD_APP_URL="https://cloud.myorg.com" \ -e ADMIN_PASSWORD=admin \ -v /data/private-cloud:/data nxprivatecloud/nxcloud:latest

Using HTTP

> docker create --name cloud \ -p 80:8081 \ -e LICENSE_KEY=JKLSJKJFSLKFHH8499232PQITDg8pQ= -e NX_CLOUD_MODE=private-enterprise \ -e NX_CLOUD_APP_URL="https://cloud.myorg.com" \ -e ADMIN_PASSWORD=admin \ -v /data/private-cloud:/data nxprivatecloud/nxcloud:latest

Let's see what those options mean:

  • 443:8081 maps the internal port 8081 to 443, so it can be accessed in the browser without specifying the port. 80:8081 works the same way when you use HTTP instead of HTTPS.

  • CERT_KEY and CERT contain the values of private key and cert. The file extensions of the cert and key files can be different, but as long as they are in the PEM format (which is the case if you use, for instance, OpenSSL), the command will work.

  • NX_CLOUD_APP_URL is the URL the cloud can be accessed by (e.g., https://nxcloud.privateurl.com). Important: Unless you are experimenting, it won't be localhost. It has to be the URL that your CI and your developer machine can reach. Also note, there is no trailing slash in the URL.

  • ADMIN_PASSWORD contains the password of the admin user. The admin user is created the first time you run cloud, you can remove this env variable after that.

  • -v /data/private-cloud:/data sets up the volume where the data is stored.

Step 4: Run the Container

Once you create the container, you can start it using:

> docker start cloud

Imagine NX_CLOUD_APP_URL is set to https://nxcloud.privateurl.com.

Now, go to https://nxcloud.privateurl.com to see cloud running. You can log into the account using admin/ADMIN_PASSWORD.

Step 5: Connect Your Workspace

Run NX_CLOUD_API=https://nxcloud.privateurl.com nx g @nrwl/nx-cloud:init. Click on the link to connect the workspace to your admin account.

Step 6: Configure Billing

Whereas in the community mode you can provision your credit and start using Nx Private Cloud right away, when using the enterprise mode, you have to purchase a coupon from Nrwl. Fill in this form to find out more.

As stated above, Nx Private Cloud Enterprise is fully self-contained and doesn't send any information outside of your network.

Select an article to learn more about Nx Cloud