Skip to content

Container image to provide runtime environment for developing and testing Apache Ozone

License

Notifications You must be signed in to change notification settings

apache/ozone-docker-runner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6c88cfc · Dec 15, 2024

History

43 Commits
Nov 8, 2024
Jul 23, 2024
Feb 8, 2021
Dec 15, 2024
Jun 3, 2019
May 17, 2021
Apr 4, 2022
Feb 8, 2021
Jun 3, 2019
Jun 3, 2019

Apache Ozone runner base image

This is the base image to run Apache Hadoop Ozone in docker containers. This is only for test/develop and not for production.

The container doesn't include any Ozone specific jar files or release artifacts just an empty environment which includes all the specific tools to run and test Apache Ozone inside containers.

The image is available as apache/ozone-runner. Build is managed by Docker Hub.

Development

To build the image, please use:

DOCKER_BUILDKIT=1 docker build -t apache/ozone-runner:dev .

To test it, build Apache Ozone:

mvn clean verify -DskipTests -Dskip.npx -DskipShade -Ddocker.ozone-runner.version=dev

And start the compose cluster:

cd hadoop-ozone/dist/target/ozone-*/compose/ozone
docker-compose up -d

*After merging PR, a new tag should pushed to the repository to create a new image. Use the convention: YYYYMMDD-N for tags where N is a daily counter (see the existing tags as an example).

After tag is published (and built by Docker Hub), the used runner version can be updated by modifying the docker.ozone-runner.version version in hadoop-ozone/dist/pom.xml

Building multi-architecture images

To build images with multiple architectures, use docker buildx.

For example, to build images for both linux/amd64 and linux/arm64, run:

docker buildx build --platform linux/amd64,linux/arm64 -t apache/ozone-runner:dev . --progress=plain

It might be slow when building the non-native architecture image due to QEMU emulation.