{"id":21971290,"url":"https://github.com/eldada/jcr-k8s-demo","last_synced_at":"2026-05-15T23:05:38.758Z","repository":{"id":114564339,"uuid":"226657609","full_name":"eldada/jcr-k8s-demo","owner":"eldada","description":"Setting up JFrog Container Registry in Kubernetes demo","archived":false,"fork":false,"pushed_at":"2019-12-08T11:56:01.000Z","size":2,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-22T23:09:46.341Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eldada.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-12-08T11:36:43.000Z","updated_at":"2019-12-08T11:56:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"b8ed18d0-394f-4319-bfa4-5fc221da8f87","html_url":"https://github.com/eldada/jcr-k8s-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eldada/jcr-k8s-demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldada%2Fjcr-k8s-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldada%2Fjcr-k8s-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldada%2Fjcr-k8s-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldada%2Fjcr-k8s-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eldada","download_url":"https://codeload.github.com/eldada/jcr-k8s-demo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldada%2Fjcr-k8s-demo/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265575504,"owners_count":23790780,"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":[],"created_at":"2024-11-29T14:49:53.479Z","updated_at":"2026-05-15T23:05:33.719Z","avatar_url":"https://github.com/eldada.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JFrog Container Registry Demo\nThis repository a demo with the technical steps of spinning up a secure, private (and free!)\n[JFrog Container Registry](https://jfrog.com/container-registry/) in [Kubernetes](https://kubernetes.io/)\nusing the official [JCR Helm Chart](https://hub.helm.sh/charts/jfrog/artifactory-jcr) and uploading a locally built Docker image to it.\n\n## Requirements\n1. Docker\n2. A running Kubernetes cluster\n3. The [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) cli\n4. [Helm client](https://github.com/helm/helm/releases)\n\n## Steps\n\n### Deploy JCR (using helm v3)\nUse Helm (v3) to add the JFrog repository and deploy with the official JCR helm chart.\n```bash\nhelm repo add jfrog https://charts.jfrog.io\nhelm install jcr jfrog/artifactory-jcr\n\n```\n\n### Setup JCR\nGet the JCR setup as a Docker registry\n\n1. [Option 1] Get JCR IP from load balancer if provisioned\n```bash\n# NOTE: It might take a few minutes before the public IP is ready\nexport JCR_IP=$(kubectl get service/jcr-artifactory-nginx -o jsonpath='{.status.loadBalancer.ingress[0].ip}')\necho ${JCR_IP}\n\n```\n\n2. [Option 2] Use port forward to the service and access on localhost\n```bash\nkubectl port-forward jcr-artifactory-0 8081:8081 \u0026\nexport JCR_IP=localhost\n\n```\n\n3. Browse to http://${JCR_IP} and follow on screen onboarding wizard. Create a Docker registry\n\n### Docker image\n1. Build a Docker image from the local [Dockerfile](Dockerfile)\n```bash\ndocker build -t my-secret-app:0.0.1 .\n```\n\n2. Docker login\n```bash\ndocker login -u admin ${JCR_IP}\n```\n\n3. Tag your local Docker image\n```bash\ndocker tag my-secret-app:0.0.1 ${JCR_IP}/docker/my-secret-app:0.0.1\n```\n\n4. Push Docker image to JCR\n```bash\ndocker push ${JCR_IP}/docker/my-secret-app:0.0.1\n```\n\n### Remove JCR (using helm v3)\nOnce done, you can easily remove JCR with helm\n```bash\nhelm uninstall jcr\n\n# Remove left over PVCs if needed\nkubectl get pvc\n\nkubectl delete pvc ...\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feldada%2Fjcr-k8s-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feldada%2Fjcr-k8s-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feldada%2Fjcr-k8s-demo/lists"}