Sign inSign up

ivanfabbri/jenkins-agent-jdk23

By ivanfabbri

•Updated almost 2 years ago

Custom Jenkins agent image for Java projects and Docker builds, ideal for advanced CI/CD pipelines

Image
Integration & delivery
Developer tools
0

955

ivanfabbri/jenkins-agent-jdk23 repository overview

⁠Custom Jenkins Agent for JNLP Connections

This Docker Hub repository hosts a custom Jenkins agent image, built on the official Jenkins inbound agent, specifically designed for JNLP (Java Network Launch Protocol) connections. It enhances the base agent with additional tools and features tailored for Java-based projects and Docker builds, making it an ideal solution for advanced CI/CD pipelines.


⁠Key Features

  • Built-in JDK 23: Includes Oracle JDK 23 for Java development.
  • Maven 3.9.9: Pre-installed Apache Maven for streamlined Java project builds.
  • Docker-in-Docker (DinD) Support: Enables Docker operations within the container for building and managing Docker images.
  • Pre-configured Environment Variables: Ensures the tools are available in the PATH for seamless usage during builds.
  • GOSU Integration: Provides safe privilege escalation to the Jenkins user, ensuring security and flexibility.
  • Customizable Docker Group: Dynamically adapts the Docker group ID for compatibility with host systems.
  • Time Zone Configuration: Default timezone set to America/Sao_Paulo, with the ability to customize as needed.
  • On-Demand Agent Usage: The agent can be used on-demand to create a container, perform the build, and then remove the container after completion, ensuring efficient resource management.

⁠Base Image

The image is based on jenkins/inbound-agent, ensuring compatibility with Jenkins and supporting JNLP connections out of the box.

⁠Usage

Ideal for CI/CD pipelines that require Java development tools and Docker integration. Suitable for teams leveraging Jenkins for building and deploying Java-based applications.

To run the agent with Docker functionality and set the timezone dynamically, use the following command:

Ensure Docker functionality by binding the Docker socket (/var/run/docker.sock) from the host.


docker run -d \
  -e TZ=America/New_York \
  -v /var/run/docker.sock:/var/run/docker.sock \
  ivanfabbri/jenkins-agent-jdk23:latest

⁠Disclaimer

This image is provided "as-is" without any warranties or guarantees of any kind. The maintainers are not responsible for any issues, damages, or disruptions caused by using this image. Users are responsible for ensuring compatibility with their systems and for managing the image's usage in their environments.

Tag summary

Content type

Image

Digest

sha256:37bd37ad5…

Size

585.3 MB

Last updated

almost 2 years ago

docker pull ivanfabbri/jenkins-agent-jdk23