arconia image build buildpacks
The arconia image build buildpacks command builds a container image for your Spring Boot application using Cloud Native Buildpacks. It delegates to your build tool’s (Maven/Gradle) image build tasks to package your application as a container image, relying on the Spring Boot integration with Paketo Buildpacks.
How It Works
This approach does not require a Dockerfile: the buildpack automatically detects the application type, installs the appropriate runtime, and assembles the image following best practices for security and performance.
Usage
Basic usage:
arconia image build buildpacks
With a custom image name:
arconia image build buildpacks --image-name ghcr.io/arconia-io/configuration-service:1.0.0
Publish the image to a registry after building:
arconia image build buildpacks --image-name ghcr.io/arconia-io/configuration-service --publish-image
Build for a specific platform:
arconia image build buildpacks --image-platform linux/amd64
Build a multi-arch image for multiple platforms:
arconia image build buildpacks \
--image-name ghcr.io/arconia-io/configuration-service:1.0.0 \
--image-platform linux/amd64 \
--image-platform linux/arm64 \
--publish-image
Build with a clean Buildpacks cache:
arconia image build buildpacks --clean-cache
Pass extra parameters to the underlying build tool using --:
arconia image build buildpacks -- --stacktrace
arconia image build buildpacks -- -DmyProperty=value
Options
The following options are available:
| Option | Default | Description |
|---|---|---|
|
Name (and optionally tag) for the image to build. For example: |
|
|
Name of the Buildpacks Builder image to use (e.g. |
|
|
Name of the Buildpacks Run image to use (e.g. |
|
|
|
Whether to clean the Buildpacks local cache before building. Useful when troubleshooting caching issues. |
|
|
Whether to publish the generated image to an OCI registry after building. Make sure you are authenticated with the target registry (e.g., |
|
Platform(s) for the image to build (e.g., |
|
|
|
Perform a clean build of the application before building the image. |
|
|
Skip tests during the application build. |
|
|
Include verbose output. |
|
Display help information for the command. |
To push the image to a registry using --publish-image, authenticate first (e.g., podman login ghcr.io). Registry credentials can also be configured in your Spring Boot build plugin for CI/CD environments.
|
Build Tool Integration
The command automatically detects whether your project uses Maven or Gradle and runs the appropriate image build task:
| Build Tool | Command |
|---|---|
Gradle |
|
Maven |
|
Use -- to pass parameters directly to the underlying build tool. The -- separator is required to distinguish Arconia CLI options from build tool parameters.
Multi-Architecture Images
When you specify multiple platforms with --image-platform, the CLI orchestrates a multi-arch image build:
-
For each platform, it builds a platform-specific image (tagged with a
-<os>-<arch>suffix, e.g.,my-app:1.0.0-linux-amd64). -
Each platform-specific image is published to the registry.
-
An OCI image index (manifest list) is created that references all platform-specific images and is pushed to the registry under the original tag.
This means consumers can pull the image by its base tag (e.g., my-app:1.0.0) and their container runtime will automatically select the correct platform-specific image.
arconia image build buildpacks \
--image-name ghcr.io/arconia-io/configuration-service:1.0.0 \
--image-platform linux/amd64 linux/arm64 \
--publish-image
Multi-arch builds require --publish-image because the OCI image index must be assembled from manifests already present in a registry.
|