To install the latest version of npm Enterprise, you need a server fulfilling these basic specs:
- 64-bit architecture
- Kernel version 3.10 or higher
One of the following Linux flavors (see note on supported platforms below):
- Ubuntu 14.04 / 15.10
- CentOS 6.x
- Red Hat Enterprise Linux (RHEL) 7.x
- Debian 7.7
4 or more CPUs/cores
- At least 16 GB of memory/RAM
- At least 25 GB of disk space (see note on disk space below)
Ports opened for inbound TCP traffic:
- 8800 (admin console)
- 8080 (registry)
- 8081 (website)
Access to the public internet, either directly or via proxy (see network requirements below)
If using Amazon Web Services, see note on AWS below.
Access to the following domains are required for installing and running an instance of npm Enterprise. Assume HTTP and HTTPS traffic for all of the domains listed.
In addition to this list, you should make sure your host has access to the
apt repositories it needs for standard OS and kernel upgrades.
We have tested extensively on the operating systems listed above. It may be possible to run npm Enterprise on other systems, but none are officially supported at this time.
We do our best to support as many systems as possible. If you have special requirements or feedback for other platforms, please reach out to us at email@example.com. We'd love to work with you.
You can also check for system issues on the npme-installer GitHub repo.
The amount of disk space needed is directly proportional to the number and size of packages your registry will need to host.
For example, the full public registry hosts at least 300,000 packages with an average of 6 versions each, and this requires at least a terabyte of storage. Smaller registries, however, can get away with just a few gigabytes.
Therefore, a server with 75 - 150 GB is a good choice for most registries.
Please reserve at least 10 GB for OS resources and npm Enterprise appliance containers.
Once installed, you can configure where registry data is stored on your server via the "Storage" paths on the "Settings" page of the admin web console (port 8800). For details on configuring your Enterprise instance, please see this page.
We have an AMI for npm Enterprise, and you should use it! Read more about that here.
We recommend using an m3.large instance type.
If extra storage is needed, you may want to attach an EBS volume to your EC2 instance and configure the "Storage" paths on your Enterprise appliance to use directories under the mount point.
To open ports on your AWS EC2 instance, you can define a Security Group with the following Inbound settings:
|8800||Admin web console|