Skip to content

Latest commit

 

History

History
178 lines (116 loc) · 5.09 KB

File metadata and controls

178 lines (116 loc) · 5.09 KB

🚀 Installation Methods

ShelfBridge can be installed using several different methods. Choose the one that best fits your environment and experience level.

🎯 Which Method Should I Choose?

Method Best For Difficulty Updates Isolation
Docker Compose Most users, home servers Easy Automatic Excellent
Manual Docker Custom deployments, advanced users Medium Manual Excellent
Node.js Direct Developers, custom integrations Medium Manual None
From Source Contributors, bleeding edge Hard Manual None

🐳 Docker Methods (Recommended)

1. Docker Compose (Easiest)

Perfect for:

  • Home server deployments
  • NAS systems (Synology, QNAP, etc.)
  • Users who want "set and forget" operation

Advantages:

  • Zero-configuration setup
  • Automatic container management
  • Easy updates
  • Named volumes for data persistence

Get Started:

2. Manual Docker

Perfect for:

  • Custom container orchestration
  • Kubernetes deployments
  • Advanced Docker users

Advantages:

  • Full control over container configuration
  • Custom network setups
  • Integration with existing container stacks

Get Started: See the Docker Setup Guide for manual Docker commands and configurations.

📦 Node.js Methods

3. Node.js Direct Installation

Perfect for:

  • Development environments
  • Custom integrations
  • Users who prefer direct control

Advantages:

  • Direct access to source code
  • Easy debugging and customization
  • No containerization overhead

Get Started:

4. From Source (Advanced)

Perfect for:

  • Contributors and developers
  • Testing unreleased features
  • Custom modifications

Advantages:

  • Latest development code
  • Ability to modify source
  • Full development environment

Get Started:

🖥️ Platform-Specific Considerations

Linux

  • Docker: Native support, excellent performance
  • Node.js: Direct installation recommended
  • Package managers: Use system package manager for Node.js

macOS

  • Docker Desktop: Easy installation and management
  • Node.js: Install via Homebrew or official installer
  • Apple Silicon: Both Docker and Node.js have native ARM64 support

Windows

  • Docker Desktop: Recommended for Windows 10/11
  • WSL2: Excellent for Linux-like experience
  • Node.js: Official Windows installer available

NAS Systems (Synology, QNAP, etc.)

  • Docker: Usually the best option
  • Check compatibility: Ensure your NAS supports Docker
  • ARM processors: Use ARM64 Docker images

🏗️ Infrastructure Considerations

Home Server

  • Docker Compose: Ideal for most home servers
  • Portainer: Consider for Docker management UI
  • Reverse proxy: Integrate with existing proxy setup

Cloud Deployment

  • Docker: Works on all major cloud platforms
  • Container services: AWS ECS, Google Cloud Run, Azure Container Instances
  • Serverless: Consider for scheduled sync operations

Corporate Environment

  • Security: Review Docker security policies
  • Proxy: Configure for corporate proxy servers
  • Compliance: Ensure meets corporate software policies

🔄 Migration Between Methods

Docker Compose → Manual Docker

  1. Export volumes: docker-compose down && docker volume ls
  2. Note volume paths and configurations
  3. Use manual Docker run with same volumes

Node.js → Docker

  1. Backup configuration: cp config/config.yaml config.backup
  2. Export cache: node src/main.js cache --export backup.json
  3. Set up Docker with same configuration
  4. Import cache if needed

Docker → Node.js

  1. Extract config: docker exec container cat /app/config/config.yaml
  2. Extract cache: docker exec container node src/main.js cache --export
  3. Set up Node.js environment
  4. Import configuration and cache

🛠️ Next Steps

Once you've chosen your installation method:

  1. Review Prerequisites: Prerequisites Guide
  2. Follow Installation Guide: Method-specific setup instructions
  3. Configure ShelfBridge: Configuration Overview
  4. Test Your Setup: First Sync Guide

🆘 Need Help?


Ready to install? Choose your method and follow the corresponding guide!