Dorian 30ed48ad1b Enhance Docker integration and API for container management
- Implemented Docker container scanning and periodic updates in the Server initialization.
- Added new RPC endpoints for managing Docker containers, including start, stop, and restart functionalities.
- Updated the API to handle package management for Docker-based applications.
- Improved environment variable handling for user-specific configurations in Podman and Docker clients.
- Enhanced the development startup script to include Docker container management and provide clearer instructions for full stack setup.
2026-01-27 23:21:26 +00:00
2026-01-24 22:59:20 +00:00

Archipelago Bitcoin Node OS

Next-generation Bitcoin Node OS built on Alpine Linux with Docker/Podman containerization.

🚀 New to Archipelago?

Get started in minutes: GETTING_STARTED.md

Quick reference: QUICK_REFERENCE_DOCKER.md

Overview

Archipelago is a modern Bitcoin Node OS focused on:

  • Standard Containers: Docker for dev, Podman for production
  • Minimal Base: Alpine Linux (130MB vs 1.5GB+)
  • Security First: Rootless containers, hardened kernel
  • Multi-Architecture: ARM64 (Raspberry Pi) + x86_64

Quick Start

Installation

First, install all required dependencies:

./INSTALL.sh

This will install:

  • Rust (latest stable)
  • Node.js 18+
  • Podman (container runtime)
  • PostgreSQL 15
  • All project dependencies

Manual Installation: See SETUP_GUIDE.md for detailed installation instructions.

Verify Installation:

./verify-install.sh

Development Setup

  1. Configure environment (optional):

    cp core/.env.example core/.env
    cp neode-ui/.env.example neode-ui/.env
    
  2. Start development servers:

    Quick start (mock backend for UI development):

    ./scripts/dev.sh
    

    Or use the interactive starter:

    ./scripts/dev-start.sh
    

    Or manually:

    # Terminal 1: Backend
    cd core
    cargo run --bin archipelago
    
    # Terminal 2: Frontend
    cd neode-ui
    npm run dev
    
  3. Open in browser:

Mock Backend (UI Development Only)

For frontend-only development:

cd /Users/tx1138/Code/Archipelago/neode-ui
npm run dev:mock

Project Structure

Archipelago/
├── core/                    # Rust backend
│   ├── archipelago/        # Main backend binary
│   ├── container/          # Container orchestration
│   ├── security/           # Security modules
│   └── models/             # Shared data models
├── neode-ui/               # Vue.js frontend (in Code/Archipelago)
├── apps/                   # App manifests (NEW)
├── image-recipe/           # Alpine Linux build files
├── scripts/                # Development and build scripts
└── docs/                   # Documentation

Development

See Development Setup Guide for detailed instructions.

Architecture

See Architecture Documentation for system design details.

App Manifests

See App Manifest Specification for creating containerized apps.

Features

  • 🐧 Alpine Linux Base - Minimal 130MB OS
  • 🐳 Podman Containers - Rootless, secure containerization
  • 🔒 Security Hardened - AppArmor, secrets management, image verification
  • High Performance - Resource management, optimization
  • 🔌 Parmanode Compatible - Run existing Parmanode modules
  • 📱 Modern UI - Vue.js 3 with TypeScript
  • 🌐 Web5 & Nostr - Decentralized protocols support
  • 📡 Mesh Networking - Meshtastic and router support

Requirements

  • Rust (latest stable)
  • Node.js 18+
  • Podman (for containers)
  • PostgreSQL (for backend)

License

MIT

Description
No description provided
Readme 6.8 GiB
Languages
Rust 42.9%
Vue 21.3%
Shell 12.9%
TypeScript 9.2%
JavaScript 6.6%
Other 7.1%