{"id":25971778,"url":"https://github.com/eclipse/jkube","last_synced_at":"2025-03-05T00:02:00.968Z","repository":{"id":37385076,"uuid":"216815773","full_name":"eclipse-jkube/jkube","owner":"eclipse-jkube","description":"Build and Deploy java applications on Kubernetes","archived":false,"fork":false,"pushed_at":"2024-10-28T06:09:15.000Z","size":28917,"stargazers_count":765,"open_issues_count":204,"forks_count":513,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-10-29T14:52:28.336Z","etag":null,"topics":["cloud-native-java","docker","gradle-plugin","hacktoberfest","java","kubernetes","maven-plugin","openshift"],"latest_commit_sha":null,"homepage":"https://www.eclipse.dev/jkube/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eclipse-jkube.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-22T13:04:50.000Z","updated_at":"2024-10-28T06:19:17.000Z","dependencies_parsed_at":"2024-03-22T16:36:58.674Z","dependency_job_id":"0b996070-b807-493f-a6d7-f887922fdf9e","html_url":"https://github.com/eclipse-jkube/jkube","commit_stats":{"total_commits":2182,"total_committers":294,"mean_commits":7.421768707482993,"dds":0.689275893675527,"last_synced_commit":"8e95c4c8151dca5c12deb2f81042732717803801"},"previous_names":["eclipse-jkube/jkube","eclipse/jkube"],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-jkube%2Fjkube","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-jkube%2Fjkube/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-jkube%2Fjkube/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-jkube%2Fjkube/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eclipse-jkube","download_url":"https://codeload.github.com/eclipse-jkube/jkube/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241940572,"owners_count":20045881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-native-java","docker","gradle-plugin","hacktoberfest","java","kubernetes","maven-plugin","openshift"],"created_at":"2025-03-05T00:01:45.837Z","updated_at":"2025-03-05T00:02:00.943Z","avatar_url":"https://github.com/eclipse-jkube.png","language":"Java","readme":"# Eclipse JKube\n\n\u003e Cloud-Native Java Applications without a hassle\n\n[![E2E Tests](https://github.com/eclipse-jkube/jkube-integration-tests/actions/workflows/e2e-tests.yml/badge.svg)](https://github.com/eclipse-jkube/jkube-integration-tests/actions/workflows/e2e-tests.yml)\n[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=jkubeio_jkube\u0026metric=sqale_rating)](https://sonarcloud.io/dashboard?id=jkubeio_jkube)\n[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=jkubeio_jkube\u0026metric=coverage)](https://sonarcloud.io/dashboard?id=jkubeio_jkube)\n[![Gitter](https://badges.gitter.im/eclipse-jkube/jkube.svg)](https://gitter.im/eclipse-jkube/jkube?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge)\n[![Twitter](https://img.shields.io/twitter/follow/jkubeio?style=social)](https://twitter.com/jkubeio)\n\n[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/eclipse-jkube/jkube)\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://www.eclipse.dev/jkube/\"\u003e\n    \u003cimg src=\"./media/JKube-Logo-final-horizontal-color.png\" alt=\"Eclipse JKube\" title=\"The Eclipse JKube Logo\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Contents\n\n- [Introduction](#introduction)\n  - [Kubernetes Maven Plugin](#kubernetes-maven-plugin)\n  - [Kubernetes Gradle Plugin](#kubernetes-gradle-plugin)\n  - [OpenShift Maven Plugin](#openshift-maven-plugin)\n  - [OpenShift Gradle Plugin](#openshift-gradle-plugin)\n- [Migrating from Fabric8 Maven Plugin to Kubernetes/OpenShift Maven Plugin](https://www.eclipse.dev/jkube/docs/migration-guide)\n- [Getting Started](#getting-started)\n  - [Maven Quickstarts](./quickstarts/maven)\n  - [Gradle Quickstarts](./quickstarts/gradle)\n  - [Hello World using Eclipse JKube](#hello-world-using-eclipse-jkube)\n    - [Troubleshooting](#troubleshooting)\n- [Rebranding Notice](#rebranding-notice--loudspeaker-)\n- [Contributing](https://www.eclipse.dev/jkube/contributing/)\n- [How to use Eclipse JKube snapshot artifacts?](./USING-SNAPSHOT-ARTIFACTS.md)\n- [Add your organization to ADOPTERS](./ADOPTERS.md)\n- [FAQs](https://www.eclipse.dev/jkube/docs/kubernetes-maven-plugin/#faq)\n\n## Introduction\n\nEclipse JKube is a collection of plugins and libraries that are used for building container images using Docker, JIB or\nS2I build strategies. Eclipse JKube generates and deploys Kubernetes/OpenShift manifests at compile time too.\n\nIt brings your Java applications on to Kubernetes and OpenShift by leveraging the tasks required to make your\napplication cloud-native.\n\nEclipse JKube also provides a set of tools such as watch, debug, log, etc. to improve your developer experience.\nThis project contains various building blocks for the Kubernetes Java developer toolbox.\n\n### Kubernetes Maven Plugin\n\n- [![Maven Central](https://img.shields.io/maven-central/v/org.eclipse.jkube/kubernetes-maven-plugin.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22org.eclipse.jkube%22%20AND%20a:%22kubernetes-maven-plugin%22)\n- [![Documentation](https://img.shields.io/badge/plugin-documentation-lightgrey)](https://www.eclipse.dev/jkube/docs/kubernetes-maven-plugin)\n- Add to project:\n  ```xml\n  \u003cplugin\u003e\n    \u003cgroupId\u003eorg.eclipse.jkube\u003c/groupId\u003e\n    \u003cartifactId\u003ekubernetes-maven-plugin\u003c/artifactId\u003e\n    \u003cversion\u003e${jkube.version}\u003c/version\u003e\n  \u003c/plugin\u003e\n  ```\n- Run the JKube commands, for instance:\n  ```shell\n  mvn package k8s:build k8s:push k8s:resource k8s:apply\n  ```\n- :tv: Watch 2-minute demo on YouTube:\n\n[![KubernetesMavenPluginDemo](https://img.youtube.com/vi/FHz5q8ERtPk/0.jpg)](https://youtu.be/FHz5q8ERtPk)\n\n### Kubernetes Gradle Plugin\n\n- [![Maven Central](https://img.shields.io/maven-central/v/org.eclipse.jkube.kubernetes/org.eclipse.jkube.kubernetes.gradle.plugin.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22org.eclipse.jkube.kubernetes%22%20AND%20a:%22org.eclipse.jkube.kubernetes.gradle.plugin%22)\n- [![Documentation](https://img.shields.io/badge/plugin-documentation-lightgrey)](https://www.eclipse.dev/jkube/docs/kubernetes-gradle-plugin/)\n- Add to project:\n  ```groovy\n  plugins {\n    id \"org.eclipse.jkube.kubernetes\" version \"${jKubeVersion}\"\n  }\n  ```\n- Run the JKube commands, for instance:\n  ```shell\n  gradle build k8sBuild k8sPush k8sResource k8sApply\n  ```\n- :tv: Watch 2-minute demo on YouTube:\n\n[![KubernetesGradlePluginDemo](https://img.youtube.com/vi/TUYl2Vw8bnQ/0.jpg)](https://youtu.be/TUYl2Vw8bnQ)\n\n### OpenShift Gradle Plugin\n\n- [![Maven Central](https://img.shields.io/maven-central/v/org.eclipse.jkube.openshift/org.eclipse.jkube.openshift.gradle.plugin.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22org.eclipse.jkube.openshift%22%20AND%20a:%22org.eclipse.jkube.openshift.gradle.plugin%22)\n- [![Documentation](https://img.shields.io/badge/plugin-documentation-lightgrey)](https://www.eclipse.dev/jkube/docs/openshift-gradle-plugin/)\n- Add to project:\n  ```groovy\n  plugins {\n    id \"org.eclipse.jkube.openshift\" version \"${jKubeVersion}\"\n  }\n  ```\n- Run the JKube commands, for instance:\n  ```shell\n  gradle build ocBuild ocResource ocApply\n  ```\n- :tv: Watch 2-minute demo on YouTube:\n\n[![OpenShiftGradlePluginDemo](https://img.youtube.com/vi/uMxEzLdqcik/0.jpg)](https://youtu.be/uMxEzLdqcik)\n\n### OpenShift Maven Plugin\n\n- [![Maven Central](https://img.shields.io/maven-central/v/org.eclipse.jkube/openshift-maven-plugin.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22org.eclipse.jkube%22%20AND%20a:%22openshift-maven-plugin%22)\n- [![Documentation](https://img.shields.io/badge/plugin-documentation-lightgrey)](https://www.eclipse.dev/jkube/docs/openshift-maven-plugin)\n- Add to project:\n  ```xml\n  \u003cplugin\u003e\n    \u003cgroupId\u003eorg.eclipse.jkube\u003c/groupId\u003e\n    \u003cartifactId\u003eopenshift-maven-plugin\u003c/artifactId\u003e\n    \u003cversion\u003e${jkube.version}\u003c/version\u003e\n  \u003c/plugin\u003e\n  ```\n- Run the JKube commands, for instance:\n  ```shell\n  mvn package oc:build oc:resource oc:apply\n  ```\n- :tv: Watch 2-minute demo on YouTube:\n\n[![OpenShiftMavenPluginDemo](https://img.youtube.com/vi/ZJzfD-bDxpc/0.jpg)](https://youtu.be/ZJzfD-bDxpc)\n\n## Getting started\n\nYou can take a look at our quickstarts in [quickstarts](./quickstarts) directory that contain sample maven and gradle projects using the latest version of jkube plugin.\n\n### Hello World using Eclipse JKube\n\n- Clone repository and move to quickstart [helloworld](https://github.com/eclipse-jkube/jkube/tree/master/quickstarts/maven/hello-world) sample, build project and run JKube goals:\n\n```shell script\n# 1. Clone repository\n$ git clone git@github.com:eclipse/jkube.git\n\n# 2. Move to Hello World Quickstart folder\n$ cd jkube/quickstarts/maven/hello-world\n\n# 3. Configure your local environment to re-use the Docker daemon inside the Minikube instance.\n\n~ jkube/quickstarts/maven/hello-world : $ eval $(minikube -p minikube docker-env) \n\n# 4. Build Project and run JKube goals\n$ mvn clean install                                                            \\\n  k8s:build         `# Build Docker Image`                                     \\\n  k8s:resource      `# Generate Kubernetes Manifests`                          \\\n  k8s:apply         `# Apply generated Kubernetes Manifests onto Kubernetes`\n```\n\n- Check created pod logs:\n\n```shell script\n# Using Kubectl\n$ kubectl get pods\nNAME                          READY   STATUS    RESTARTS   AGE\nhelloworld-664bf5fdff-2bmrt   1/1     Running   0          9s\n$ kubectl get svc\nhelloworld   NodePort    10.110.92.145   \u003cnone\u003e        8080:32353/TCP   58m\nkubernetes   ClusterIP   10.96.0.1       \u003cnone\u003e        443/TCP          7h\n$ curl `minikube ip`:32353/hello\nHello World\n```\n\n#### Troubleshooting\n\nIf you experience problems using minikube that pod's status shows 'ImagePullBackOff' and not 'Running' you must share the minikube's docker daemon environment with your shell with:\n\n```shell script\n$ eval $(minikube -p minikube docker-env) \n```\n\nYou can remove this from your shell again with:\n\n```shell script\n$ eval $(minikube docker-env -u)\n```\n\nIf you don't want to type the command for every new terminal you open, you can add the command to your `.bash_profile`\non mac or `.zshrc`.\n\n## Rebranding Notice :loudspeaker:\n\nThis project is not an effort from scratch. It was earlier called\n[Fabric8 Maven Plugin](https://github.com/fabric8io/fabric8-maven-plugin).\nIt is just refactored and rebranded version of the project targeted towards Java developers who are working on top of\nKubernetes. For more information about history, please see [REBRANDING.md](./REBRANDING.md)\n","funding_links":[],"categories":["Tools and Libraries"],"sub_categories":["Development Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse%2Fjkube","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feclipse%2Fjkube","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse%2Fjkube/lists"}