Homepage
1) Create new LXC Container:
Storage: 3GB
RAM: 1024MB
vCPU: 2
2) Run container and install dependencies
apt-get update && upgrade
apt-get install -y curl sudo mc git
curl https://deb.nodesource.com/setup_16.x | -E bash -
apt update && install -y nodejs
npm install -g pnpm
3) Install Homepage
RELEASE=$(curl -s https://api.github.com/repos/benphelps/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
wget -q https://github.com/benphelps/homepage/archive/refs/tags/v${RELEASE}.tar.gz
tar -xvf v${RELEASE}.tar.gz
mkdir -p /opt/homepage
cp -r homepage-${RELEASE}/* /opt/homepage
rm -rf v${RELEASE}.tar.gz homepage-${RELEASE}
cd /opt/homepage
mkdir -p config
cp /opt/homepage/src/skeleton/* /opt/homepage/config
pnpm install
pnpm build
4) Set up Service to keep alive
systemctl enable --now homepage
nano /etc/systemd/system/homepage.service
[Unit]
Description=Homepage
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
Restart=always
RestartSec=1
User=root
WorkingDirectory=/opt/homepage/
ExecStart=pnpm start
[Install]
WantedBy=multi-user.target
5) Homepage should be accessible at http://<container-ip>:3000
References
https://raw.githubusercontent.com/tteck/Proxmox/main/ct/homepage.sh
Proxmox/homepage-install.sh at main · tteck/Proxmox (github.com)
benphelps/homepage: A highly customizable homepage (or startpage / application dashboard) with Docker and service API integrations. (github.com)cd