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
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
31
README.md
31
README.md
@@ -14,22 +14,25 @@ A containerized SSH backup server built on Alpine Linux, designed to provide sec
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run -p 20022:20022 -v /backup/data:/home/backup safebox/backup-client
|
docker run -p 20022:20022 -v /backup/data:/home/backup safebox/backup-client
|
||||||
|
```
|
||||||
|
|
||||||
Configuration
|
## Configuration
|
||||||
Environment Variables
|
### 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
|
| 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:
|
The container automatically:
|
||||||
|
|
||||||
User Setup: Creates the backup user with configured credentials
|
User Setup: Creates the backup user with configured credentials
|
||||||
SSH Configuration: Generates host keys (RSA and Ed25519) if not present
|
SSH Configuration: Generates host keys (Ed25519) if not present
|
||||||
Server Start: Launches SSH daemon with SFTP support
|
Server Start: Launches SSH daemon
|
||||||
|
|
||||||
Key Components
|
## Key Components
|
||||||
Dockerfile: Alpine-based image with OpenSSH, su-exec, and BorgBackup
|
Dockerfile: Alpine-based image with OpenSSH, su-exec, and BorgBackup
|
||||||
start_backup.sh: Main entrypoint script handling SSH setup
|
start_backup.sh: Main entrypoint script handling SSH setup
|
||||||
.drone.yml: CI/CD pipeline for multi-architecture builds
|
.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
|
Configurable Authentication: Supports both password and public key authentication
|
||||||
User Isolation: Runs SSH daemon as non-root user
|
User Isolation: Runs SSH daemon as non-root user
|
||||||
|
|
||||||
Development
|
## Development
|
||||||
Building Locally
|
|
||||||
Testing
|
|
||||||
CI/CD
|
|
||||||
The project uses Drone CI for automated builds:
|
|
||||||
|
|
||||||
Development builds: Push to registry.dev.format.hu/backup-client
|
Development builds: Push to registry.dev.format.hu/backup-client
|
||||||
Release builds: Tag events push to safebox/backup-client on DockerHub
|
Release builds: Tag events push to safebox/backup-client on DockerHub
|
||||||
Multi-architecture: Supports both AMD64 and ARM64 platforms
|
Multi-architecture: Supports both AMD64 and ARM64 platforms
|
||||||
|
|
||||||
License
|
## License
|
||||||
This project is open source. Please check the license file for details.
|
This project is open source. Please check the license file for details.
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user