Files
next.orly.dev/scripts/BOOTSTRAP.md
2025-11-10 11:42:59 +00:00

3.4 KiB

ORLY Relay Bootstrap Script

This directory contains a bootstrap script that automates the deployment of the ORLY relay.

Quick Start

One-Line Installation

Clone the repository and deploy the relay with a single command:

curl -sSL https://git.nostrdev.com/mleku/next.orly.dev/raw/branch/main/scripts/bootstrap.sh | bash

Note: This assumes the script is accessible at the raw URL path. Adjust the URL based on your git server's raw file URL format.

Alternative: Download and Execute

If you prefer to review the script before running it:

# Download the script
curl -o bootstrap.sh https://git.nostrdev.com/mleku/next.orly.dev/raw/branch/main/scripts/bootstrap.sh

# Review the script
cat bootstrap.sh

# Make it executable and run
chmod +x bootstrap.sh
./bootstrap.sh

What the Bootstrap Script Does

  1. Checks Prerequisites

    • Verifies that git is installed on your system
  2. Clones or Updates Repository

    • Clones the repository to ~/src/next.orly.dev if it doesn't exist
    • If the repository already exists, pulls the latest changes from the main branch
    • Stashes any local changes before updating
  3. Runs Deployment

    • Executes scripts/deploy.sh to:
      • Install Go if needed
      • Build the ORLY relay with embedded web UI
      • Install the binary to ~/.local/bin/orly
      • Set up systemd service
      • Configure necessary capabilities
  4. Provides Next Steps

    • Shows commands to start, check status, and view logs

Post-Installation

After the bootstrap script completes, you can:

Start the relay

sudo systemctl start orly

Enable on boot

sudo systemctl enable orly

Check status

sudo systemctl status orly

View logs

sudo journalctl -u orly -f

View relay identity

~/.local/bin/orly identity

Configuration

The relay configuration is managed through environment variables. Edit the systemd service file to configure:

sudo systemctl edit orly

See the main README.md for available configuration options.

Troubleshooting

Git Not Found

# Ubuntu/Debian
sudo apt-get update && sudo apt-get install -y git

# Fedora/RHEL
sudo dnf install -y git

# Arch
sudo pacman -S git

Permission Denied Errors

Make sure your user has sudo privileges for systemd service management.

Port 443 Already in Use

If you're running TLS on port 443, make sure no other service is using that port:

sudo netstat -tlnp | grep :443

Script Fails to Clone

If the repository URL is not accessible, you may need to:

  • Check your network connection
  • Verify the git server is accessible
  • Use SSH URL instead (modify the script's REPO_URL variable)

Manual Deployment

If you prefer to deploy manually without the bootstrap script:

# Clone repository
git clone https://git.nostrdev.com/mleku/next.orly.dev.git ~/src/next.orly.dev

# Enter directory
cd ~/src/next.orly.dev

# Run deployment
./scripts/deploy.sh

Security Considerations

When running scripts from the internet:

  1. Always review the script contents before execution
  2. Use HTTPS URLs to prevent man-in-the-middle attacks
  3. Verify the source is trustworthy
  4. Consider using the "download and review" method instead of piping directly to bash

Support

For issues or questions:

  • Open an issue on the git repository
  • Check the main README.md for detailed documentation
  • Review logs with sudo journalctl -u orly -f