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
-
Checks Prerequisites
- Verifies that
gitis installed on your system
- Verifies that
-
Clones or Updates Repository
- Clones the repository to
~/src/next.orly.devif it doesn't exist - If the repository already exists, pulls the latest changes from the main branch
- Stashes any local changes before updating
- Clones the repository to
-
Runs Deployment
- Executes
scripts/deploy.shto:- 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
- Executes
-
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_URLvariable)
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:
- Always review the script contents before execution
- Use HTTPS URLs to prevent man-in-the-middle attacks
- Verify the source is trustworthy
- 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