Skip to main content

Homepage

Setting Up Homepage

Homepage is a modern, fully static, fast, secure, and highly customizable application dashboard.

1. Creating the LXC Container

  1. Create a new Debian Bookworm LXC container on your Proxmox VE host.
    • Allocate at least 2 GB of RAM to the container for the initial build process or pnpm build will fail. You can reduce this later.

2. DNS Configuration

  1. Create DNS records for your Homepage server:
    • SSH into your domain controller and run the following commands to create A and PTR records:
samba-tool dns add dc1.yourdomain.com yourdomain.com home A 192.168.1.47 -U Administrator
samba-tool dns add dc1.yourdomain.com 1.168.192.in-addr.arpa 47 PTR home.yourdomain.com -U Administrator

3. Installing Dependencies

  1. Log in to the LXC container's shell.

  2. Install pnpm:

wget -qO- https://get.pnpm.io/install.sh | sh -
source /root/.bashrc
  1. Install Node.js and Git:
apt update
apt install -y nodejs git

4. Setting Up the Homepage Application

  1. Clone the Homepage repository:
git clone https://github.com/gethomepage/homepage.git
  1. Install dependencies and build the production bundle:
cd homepage
pnpm self-update
pnpm install
pnpm build

5. Creating a systemd Service

  1. Create a new systemd service file at /etc/systemd/system/homepage.service with the following content:
[Unit]
Description=Homepage service
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/root/homepage
ExecStart=/root/.local/share/pnpm/pnpm start
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
  1. Reload the systemd daemon, then start and enable the Homepage service:
systemctl daemon-reload
systemctl enable --now homepage
  1. Check the status of the service to ensure it is running correctly:
systemctl status homepage

You should now be able to access your new homepage at http://home.yourdomain.com.

Next Steps

With your homepage set up, you can now proceed to install Jellyfin.

► Jellyfin