diff --git a/README.md b/README.md index df3d1f7..6d78fe2 100644 --- a/README.md +++ b/README.md @@ -14,22 +14,25 @@ A containerized SSH backup server built on Alpine Linux, designed to provide sec ```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 +## Configuration +### Environment Variables -How it Works +| 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 (RSA and Ed25519) if not present -Server Start: Launches SSH daemon with SFTP support +SSH Configuration: Generates host keys (Ed25519) if not present +Server Start: Launches SSH daemon -Key Components +## 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 @@ -39,16 +42,12 @@ 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 -Building Locally -Testing -CI/CD -The project uses Drone CI for automated builds: +## 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 +## License This project is open source. Please check the license file for details.