Deployment Overview of Shopify CLI on Server¶
Prerequisites and Basic Requirements¶
To ensure a successful installation, the server must meet the following requirements:
-
Operating System: Compatible with Debian-based (Debian, Ubuntu) or RHEL-based (CentOS, Rocky Linux, AlmaLinux) distributions.
-
Privileges: Root or sudo access is required to perform package installations and system updates.
-
Network Access: The server must have outbound internet access to download Node.js, NVM, and the Shopify CLI via
curl.
FQDN of the final panel on the hostkey.in domain¶
| Parameter | Value |
|---|---|
| Prefix | shopify |
| Domain | hostkey.in |
| Full template | shopify{Server_ID_from_Invapi}.hostkey.in |
Application installation process¶
The application is installed directly onto the host operating system using a combination of package managers and shell scripts. The process varies slightly depending on the Linux distribution:
For Debian/Ubuntu systems:¶
-
The system package repository is updated, and existing packages are upgraded via
apt. -
NVM (Node Version Manager) is installed via an official installation script.
-
Node.js (version 20) is installed using NVM.
-
The Shopify CLI is installed globally using
npm. -
Additional development dependencies are installed, including
ruby-full,ruby-dev,curl,gcc,g++,make,git, andxdg-utils.
For RHEL/CentOS/Rocky/AlmaLinux systems:¶
-
Development tools and language runtimes are installed via
yum. This includes the@Development Toolsgroup,ruby,ruby-devel,curl,git,tar, andxdg-utils. -
NVM (Node Version Manager) is installed via an official installation script.
-
Node.js (version 20) is installed using NVM.
-
The Shopify CLI is installed globally using
npm.
Access Rights and Security¶
-
Package Management: System updates are performed to ensure all security patches are applied during the installation process.
-
Dependencies: Essential build tools (
gcc,g++,make) are installed to support theme development requirements.
Application Update Instructions¶
To update the Shopify CLI, you must manually re-run the global npm installation command: