Install from Binary
Pre-built binaries are available for Linux, macOS, and Windows. No Rust or build tools required.
Quick Start
Linux / macOS
curl -s -o- https://raw.githubusercontent.com/ViGrise/previewproxy/main/install.sh | sudo bash
previewproxy
Install use install.sh scripts, the binary placed at
/usr/local/bin.
Windows
irm https://raw.githubusercontent.com/ViGrise/previewproxy/main/install.ps1 | iex
previewproxy
Install use install.ps1 scripts, the binary placed at
%LOCALAPPDATA%\previewproxy\bin.
Open http://localhost:8080/health to confirm it's running.
Download
Go to the GitHub Releases page and download the archive for your platform.
Linux (x86_64)
curl -fsSL https://github.com/ViGrise/previewproxy/releases/latest/download/previewproxy-linux-x86_64 -o previewproxy
chmod +x previewproxy
Linux (arm64)
curl -fsSL https://github.com/ViGrise/previewproxy/releases/latest/download/previewproxy-linux-arm64 -o previewproxy
chmod +x previewproxy
macOS (Apple Silicon)
curl -fsSL https://github.com/ViGrise/previewproxy/releases/latest/download/previewproxy-darwin-arm64 -o previewproxy
chmod +x previewproxy
macOS (Intel)
curl -fsSL https://github.com/ViGrise/previewproxy/releases/latest/download/previewproxy-darwin-x86_64 -o previewproxy
chmod +x previewproxy
Windows
Download previewproxy-windows-x86_64.exe from the releases page.
Run
./previewproxy
Open http://localhost:8080/health to confirm it's running.
Run as a systemd Service
To run PreviewProxy automatically on boot, create a systemd unit file:
sudo nano /etc/systemd/system/previewproxy.service
Paste the following:
[Unit]
Description=PreviewProxy
After=network.target
[Service]
ExecStart=/usr/local/bin/previewproxy
Restart=on-failure
Environment=PORT=8080
Environment=APP_ENV=production
[Install]
WantedBy=multi-user.target
Enable and start the service:
sudo systemctl daemon-reload
sudo systemctl enable previewproxy
sudo systemctl start previewproxy
Check the status:
sudo systemctl status previewproxy
Add any additional configuration (e.g. ALLOWED_HOSTS, HMAC_KEY) as extra Environment= lines in the [Service] block, or use EnvironmentFile=/etc/previewproxy.env to load them from a file.
Run as a Windows Service
Use NSSM (Non-Sucking Service Manager) to run PreviewProxy as a Windows service.
Install NSSM (via Chocolatey):
choco install nssm
Register the service:
nssm install PreviewProxy "C:\path\to\previewproxy-windows-x86_64.exe"
nssm set PreviewProxy AppEnvironmentExtra PORT=8080 APP_ENV=production
nssm start PreviewProxy
Manage the service:
nssm stop PreviewProxy
nssm restart PreviewProxy
nssm remove PreviewProxy confirm
Set additional configuration (e.g. ALLOWED_HOSTS, HMAC_KEY) with extra nssm set PreviewProxy AppEnvironmentExtra calls, or edit them in the Windows Services manager.
Pre-built binaries include all supported formats except:
- HEIC — requires
libheifinstalled at runtime - Video thumbnails — requires
ffmpegonPATH
Next Steps
- Environment Variables — configure the server
- HMAC Signing — secure your deployment