https://github.com/dashaun/scpd-runner
https://github.com/dashaun/scpd-runner
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/dashaun/scpd-runner
- Owner: dashaun
- License: apache-2.0
- Created: 2026-04-22T21:08:25.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-05-01T22:33:34.000Z (3 months ago)
- Last Synced: 2026-05-02T00:27:04.973Z (3 months ago)
- Language: Dockerfile
- Size: 8.79 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# scpd-runner
A multi-arch Docker image providing a Java development environment for CI/CD pipelines.
## What's Included
- **Ubuntu** (latest) base image
- **Liberica JDK 21** (21.0.10) via SDKMAN!
- **Maven Daemon (mvnd)** via SDKMAN!
- CLI tools: `curl`, `tar`, `zip`, `unzip`, `jq`, `git`, `gh`
- Maven `settings.xml` pre-configured at `/root/.m2/`
## Usage
```bash
docker pull ghcr.io/dashaun/scpd-runner:latest
docker run -it ghcr.io/dashaun/scpd-runner:latest
```
Initialize SDKMAN! inside the container before using Java or Maven:
```bash
source /root/.sdkman/bin/sdkman-init.sh
```
## Available Image Tags
| Tag | Architecture |
|---|---|
| `latest` | Multi-arch manifest (amd64 + arm64) |
| `linux-amd64` | linux/amd64 |
| `linux-arm64` | linux/arm64 |
## Building Locally
```bash
docker build -t scpd-runner .
```
## CI/CD
A GitHub Actions workflow builds and publishes images on every push to `main`. The `linux-amd64` and `linux-arm64` images are built in parallel, then combined into a multi-arch manifest tagged as `latest`. Images are published to GitHub Container Registry (GHCR).
Pull requests trigger builds on both architectures without pushing.
## License
[Apache License 2.0](LICENSE)