Skip to main content

Installation

Apex Home can be installed on Virtual Machines, VPSs, Cloud Servers, EC2, Droplets and/or Docker. Docker is the recommended and fastest way to get started.

Install on Docker

Using Docker Hub image is the easiest way to install Apex Home. It requires that you have Docker and Docker-compose already installed.

  1. Create a docker-compose.yml file similar to this:
docker-compose.yml
version: '3.8'

services:
app:
image: sanjeet990/apexhome:latest
container_name: apexhome
##ports:
## - "8000:8000"
environment:
PORT: 8000
NODE_ENV: production
SECRET_KEY: a2c5f9a8b2d7e1a7f2c9c8d9b5f7a3d5
MONGODB_URI: mongodb://admin:password@mongodb:27017/apexhome?authSource=admin
volumes:
- ./icons:/app/public/customicons
restart: unless-stopped
depends_on:
- mongodb
network_mode: host
# Use network_mode: host for better network device discovery
# Use the ports section instead of network_mode: host if you are having
# issues with network_mode: host. Un-comment the ports section and remove
# the network_mode: host line in that case.

mongodb:
image: mongo:latest
container_name: apexhome-mongodb
# ports:
# - "27017:27017" # Optional: Expose MongoDB to the host
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: password
volumes:
- ./mongodata:/data/db
restart: unless-stopped
network_mode: host
# Use network_mode: host for better performance
# Use the ports section instead of network_mode: host if you are having
# issues with network_mode: host. Un-comment the ports section and remove
# the network_mode: host line in that case.
  1. Start the services:
docker-compose up -d
  1. Open your web browser and navigate to http://localhost:8000 to access Apex Home.
Default credential
  • Username: admin (Case Sensitive)
  • Password: 123456
  1. On completion of the step, Apex Home is running on port 8000. So if the IP is 192.168.29.4, visit http://192.168.29.4:8000/login

The default credential for the first user (admin) is:

Default credential
  • Username: admin (Case Sensitive)
  • Password: 123456

Install on Virtual Machines

These steps are for direct installation on Virtual Machine, VPS or Cloud Server or Local Machine without Docker. Requires 2 GB RAM minimum.

  1. Install Node.js (Version 20.x or higher recommended)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
  1. Clone from the official Apex Home Github Repo
git clone https://github.com/Sanjeet990/Apex-Home-Dashboard
  1. Navigate to the Apex Home directory:
cd Apex-Home-Dashboard
  1. Install dependencies:
npm install
  1. Build the client (frontend):
cd client
npm install
npm run build
cd ..
  1. Set environment variables in a .env file:
PORT=8000
NODE_ENV=production
SECRET_KEY=a2c5f9a8b2d7e1a7f2c9c8d9b5f7a3d5
MONGODB_URI=mongodb://localhost:27017/apexhome
  1. Start the application:
npm start

or with PM2 (recommended for production):

npm install -g pm2
pm2 start server.js --name "apexhome"
pm2 save
  1. Access Apex Home at http://your-server-ip:8000

Install on Local Machine

These steps are for direct installation on a local development machine.

  1. Install Node.js (Version 20.x or higher recommended) from Node.js website

  2. Clone from the official Apex Home Github Repo

git clone https://github.com/Sanjeet990/Apex-Home-Dashboard
  1. Navigate to the Apex Home directory:
cd Apex-Home-Dashboard
  1. Install MongoDB locally or use a MongoDB Atlas free tier account.

  2. Install dependencies:

npm install
  1. Set environment variables in a .env file:
PORT=8000
NODE_ENV=development
SECRET_KEY=a2c5f9a8b2d7e1a7f2c9c8d9b5f7a3d5
MONGODB_URI=mongodb://localhost:27017/apexhome
  1. Start the server in development mode:
npm run dev
  1. In a second terminal window, start the client development server:
cd client
npm install
npm run dev
  1. Access the development version at http://localhost:3000 (client) and API at http://localhost:8000