Compare commits

3 Commits
1.0.0 ... main

Author SHA1 Message Date
gyurix
15c43727dd Update README.md to enhance structure and clarity by adding headings and improving formatting for environment variables and project components
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-26 17:43:55 +02:00
gyurix
3fc500ce86 Update README.md to streamline content by removing redundant sections and enhancing clarity
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-26 17:41:18 +02:00
gyurix
3271d4ae9f Update README.md to include project overview, features, quick start guide, and development instructions
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-26 17:39:17 +02:00

View File

@@ -1,2 +1,53 @@
# backup-client
A containerized SSH backup server built on Alpine Linux, designed to provide secure remote backup access using SSH/SFTP protocols.
## Features
- 🔐 **Secure SSH Access**: Automated SSH server setup with configurable authentication
- 🐳 **Docker Ready**: Multi-architecture support (linux/amd64, linux/arm64)
- 📦 **BorgBackup Integration**: Built-in backup solution support
- ⚙️ **Dynamic Configuration**: Real-time SSH config monitoring and reloading
- 🔄 **CI/CD Pipeline**: Automated builds via Drone CI
## Quick Start
```bash
docker run -p 20022:20022 -v /backup/data:/home/backup safebox/backup-client
```
## Configuration
### Environment Variables
| Variable | Default | Description |
|--------------|---------|-------------------------------|
| SSH_PORT | 20022 | SSH server listening port |
| SSH_USER | backup | Backup user name |
| SSH_PASSWORD | backup | User password for authentication |
## How it Works
The container automatically:
User Setup: Creates the backup user with configured credentials
SSH Configuration: Generates host keys (Ed25519) if not present
Server Start: Launches SSH daemon
## Key Components
Dockerfile: Alpine-based image with OpenSSH, su-exec, and BorgBackup
start_backup.sh: Main entrypoint script handling SSH setup
.drone.yml: CI/CD pipeline for multi-architecture builds
Security Features
Host Key Persistence: SSH host keys are generated once and persisted
Configurable Authentication: Supports both password and public key authentication
User Isolation: Runs SSH daemon as non-root user
## Development
Development builds: Push to registry.dev.format.hu/backup-client
Release builds: Tag events push to safebox/backup-client on DockerHub
Multi-architecture: Supports both AMD64 and ARM64 platforms
## License
This project is open source. Please check the license file for details.