Add README with usage examples and size comparison
Document the Flutter SDK Docker images with: - Image variants and sizes - Comparison showing 75% smaller than alternatives - CI/CD examples for GitHub, GitLab, and Gitea - Security features (zero CVEs, SBOM, provenance) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
68b6e6ec54
commit
09c23f66ff
107
README.md
Normal file
107
README.md
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
# Flutter SDK Docker Images
|
||||||
|
|
||||||
|
Minimal, secure Flutter SDK images for CI/CD pipelines. Built on [Wolfi](https://wolfi.dev) for a smaller footprint and zero CVEs.
|
||||||
|
|
||||||
|
## Images
|
||||||
|
|
||||||
|
| Variant | Use Case | Size |
|
||||||
|
|---------|----------|------|
|
||||||
|
| `svrnty/flutter-sdk:web-latest` | Web/WASM builds | ~800 MB |
|
||||||
|
| `svrnty/flutter-sdk:android-latest` | Android APK/AAB builds | ~1.7 GB |
|
||||||
|
| `svrnty/flutter-sdk:linux-latest` | Linux desktop builds | ~1.3 GB |
|
||||||
|
|
||||||
|
### Size Comparison
|
||||||
|
|
||||||
|
| Image | Size |
|
||||||
|
|-------|------|
|
||||||
|
| **svrnty/flutter-sdk:android** | **1.7 GB** |
|
||||||
|
| cirrusci/flutter:stable | 4.5 GB |
|
||||||
|
| ghcr.io/cirruslabs/flutter:stable | 6.8 GB |
|
||||||
|
|
||||||
|
Up to **75% smaller** than alternatives.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Zero CVEs** - No critical, high, or medium vulnerabilities
|
||||||
|
- **Multi-arch** - Supports both `linux/amd64` and `linux/arm64`
|
||||||
|
- **Non-root** - Runs as unprivileged user (UID 65532)
|
||||||
|
- **Minimal** - Only includes dependencies needed for each platform
|
||||||
|
- **SBOM & Provenance** - Full supply chain attestations included
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Web
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run --rm -v $(pwd):/app -w /app svrnty/flutter-sdk:web-latest \
|
||||||
|
flutter build web
|
||||||
|
```
|
||||||
|
|
||||||
|
### Android
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run --rm -v $(pwd):/app -w /app svrnty/flutter-sdk:android-latest \
|
||||||
|
flutter build apk
|
||||||
|
```
|
||||||
|
|
||||||
|
### Linux Desktop
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run --rm -v $(pwd):/app -w /app svrnty/flutter-sdk:linux-latest \
|
||||||
|
flutter build linux
|
||||||
|
```
|
||||||
|
|
||||||
|
## CI/CD Examples
|
||||||
|
|
||||||
|
### GitHub Actions
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: svrnty/flutter-sdk:android-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- run: flutter build apk --release
|
||||||
|
```
|
||||||
|
|
||||||
|
### GitLab CI
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
build:
|
||||||
|
image: svrnty/flutter-sdk:android-latest
|
||||||
|
script:
|
||||||
|
- flutter build apk --release
|
||||||
|
```
|
||||||
|
|
||||||
|
### Gitea Actions
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: svrnty/flutter-sdk:android-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- run: flutter build apk --release
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tags
|
||||||
|
|
||||||
|
- `<variant>-latest` - Latest stable Flutter release
|
||||||
|
- `<variant>-<version>` - Specific Flutter version (e.g., `android-3.38.9`)
|
||||||
|
- `<variant>-dev` - Pre-release testing
|
||||||
|
|
||||||
|
## Security
|
||||||
|
|
||||||
|
All images are:
|
||||||
|
- Scanned with Docker Scout on every release
|
||||||
|
- Built with SBOM and SLSA provenance attestations
|
||||||
|
- Based on Wolfi (minimal attack surface)
|
||||||
|
- Automatically updated when new Flutter versions are released
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT
|
||||||
Loading…
Reference in New Issue
Block a user