Skip to main content

Raspberry Pi

Run PC2 on your own Raspberry Pi for maximum sovereignty.

Coming Soon

Pre-built Raspberry Pi images are in development. For now, follow the manual installation below.

Hardware Requirements

ComponentMinimumRecommended
ModelRaspberry Pi 4 (4GB)Raspberry Pi 5 (8GB)
Storage32GB microSD128GB+ SSD via USB
PowerOfficial 3A PSUOfficial 5A PSU (Pi 5)
NetworkWiFiEthernet (recommended)
CoolingPassive heatsinkActive fan/case

Installation

1. Flash Raspberry Pi OS

  1. Download Raspberry Pi Imager
  2. Select Raspberry Pi OS Lite (64-bit)
  3. Configure WiFi and SSH in settings
  4. Flash to your SD card

2. Boot and Connect

ping raspberrypi.local

ssh pi@raspberrypi.local

3. Install Node.js

sudo apt update && sudo apt upgrade -y

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs

node --version

4. Install PC2

Use the ARM install script (recommended):

cd ~ && git clone https://github.com/Elacity/pc2.net.git && cd pc2.net && sudo bash scripts/install-arm.sh

Or manually:

sudo npm install -g pm2

git clone https://github.com/Elacity/pc2.net
cd pc2.net

npm install --legacy-peer-deps --ignore-scripts

cd pc2-node
npm install --legacy-peer-deps
npm run build

5. Create Service

sudo cat > /etc/systemd/system/pc2-node.service << 'EOF'
[Unit]
Description=PC2 Node
After=network.target

[Service]
Type=simple
User=pi
WorkingDirectory=/home/pi/pc2.net/pc2-node
ExecStart=/usr/bin/node dist/index.js
Restart=on-failure
Environment=PORT=4200

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable pc2-node
sudo systemctl start pc2-node

6. Access Your Cloud

Open http://raspberrypi.local:4200 in your browser.

Performance Tips

Use SSD Storage

SD cards are slow. For better performance:

  1. Get a USB 3.0 SSD enclosure
  2. Boot from SSD (use Raspberry Pi Imager)

Enable Swap

sudo dphys-swapfile swapoff
sudo sed -i 's/CONF_SWAPSIZE=100/CONF_SWAPSIZE=2048/' /etc/dphys-swapfile
sudo dphys-swapfile setup
sudo dphys-swapfile swapon

Overclock (Pi 4)

Add to /boot/config.txt:

over_voltage=6
arm_freq=2000
gpu_freq=750
warning

Overclocking requires good cooling. Monitor temperature with vcgencmd measure_temp.

Remote Access

Register for free HTTPS subdomain in Settings -> Network.

Option B: Tailscale

For private access without port forwarding:

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

Access via Tailscale IP from any device.

Power Outage Protection

Use a small UPS to protect against power outages. The systemd service automatically restarts PC2 after power loss.


Your home. Your cloud. Your sovereignty.