Quick Start with Quad-Ops #
Get Quad-Ops running in under 5 minutes using our automated installer script.
Prerequisites #
One-Line Installation #
System-Wide Installation (Recommended) #
Install quad-ops system-wide with root privileges:
curl -fsSL https://raw.githubusercontent.com/trly/quad-ops/main/install.sh | bash
This installs:
- Binary:
/usr/local/bin/quad-ops
- Config:
/etc/quad-ops/config.yaml.example
- Services:
/etc/systemd/system/quad-ops.service
and/etc/systemd/system/quad-ops@.service
User Installation #
Install quad-ops for the current user only (rootless containers):
curl -fsSL https://raw.githubusercontent.com/trly/quad-ops/main/install.sh | bash -s -- --user
This installs:
- Binary:
$HOME/.local/bin/quad-ops
- Config:
$HOME/.config/quad-ops/config.yaml.example
- Service:
$HOME/.config/systemd/user/quad-ops.service
Installation Options #
Specific Version #
curl -fsSL https://raw.githubusercontent.com/trly/quad-ops/main/install.sh | bash -s -- --version v1.2.3
Custom Install Path #
curl -fsSL https://raw.githubusercontent.com/trly/quad-ops/main/install.sh | bash -s -- --install-path /usr/local/bin
Help and Options #
curl -fsSL https://raw.githubusercontent.com/trly/quad-ops/main/install.sh | bash -s -- --help
Post-Installation Setup #
1. Add to PATH (if needed) #
The installer will warn you if the install location isn’t in your PATH:
User install:
echo 'export PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc
source ~/.bashrc
Note: /usr/local/bin
is already in PATH by default for system installations.
2. Configure Quad-Ops #
Copy and customize the example configuration:
System install:
sudo cp /etc/quad-ops/config.yaml.example /etc/quad-ops/config.yaml
sudo nano /etc/quad-ops/config.yaml
User install:
cp $HOME/.config/quad-ops/config.yaml.example $HOME/.config/quad-ops/config.yaml
nano $HOME/.config/quad-ops/config.yaml
3. Your First Sync #
Test with Example Repository #
Edit your config file to include the example repository:
# Global settings
syncInterval: 5m
# Example repository
repositories:
- name: quad-ops-examples
url: "https://github.com/trly/quad-ops.git"
ref: "main"
composeDir: "examples/multi-service"
Run the Sync #
System mode:
sudo quad-ops sync
User mode:
quad-ops --user sync
Verify Installation #
# List managed units
quad-ops unit list
# Check running containers
podman ps
Enable Automatic Syncing #
System Service #
sudo systemctl enable --now quad-ops
User Service #
systemctl --user enable --now quad-ops
Template Service (for specific users) #
System administrators can run quad-ops for specific users:
sudo systemctl enable --now quad-ops@username
Next Steps #
🎉 Congratulations! Quad-Ops is now installed and running.
- Visit your application: If using the example, check
http://localhost:8080
- Create your own projects: See Container Management for information on setting up a new repository to deploy from
Troubleshooting #
Permission Denied #
If you get permission errors, ensure you have the necessary privileges:
- System install: requires
sudo
for installation - User install: runs without
sudo
but containers run rootless
Path Issues #
If quad-ops
command isn’t found:
- Check the installer output for PATH warnings
- Add the install directory to your PATH
- Restart your shell or run
source ~/.bashrc
Service Issues #
If systemd services fail to start:
# Check service status
systemctl status quad-ops
# View logs
journalctl -u quad-ops
Alternative Installation #
For users who prefer manual installation or need more control, see the Installation guide for step-by-step manual instructions.