{"id":20032056,"url":"https://github.com/openzipkin/docker-java","last_synced_at":"2025-05-05T05:30:32.503Z","repository":{"id":40780612,"uuid":"44453697","full_name":"openzipkin/docker-java","owner":"openzipkin","description":"A small Docker image based on azul/zulu-openjdk-alpine","archived":false,"fork":false,"pushed_at":"2024-08-03T07:29:03.000Z","size":213,"stargazers_count":11,"open_issues_count":0,"forks_count":14,"subscribers_count":13,"default_branch":"master","last_synced_at":"2024-08-04T04:31:36.083Z","etag":null,"topics":["docker","zipkin","zulu"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openzipkin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-10-17T20:40:42.000Z","updated_at":"2024-08-03T07:12:26.000Z","dependencies_parsed_at":"2023-12-07T03:22:25.717Z","dependency_job_id":"727e055f-9eac-4d9c-a1a5-02bca295cbac","html_url":"https://github.com/openzipkin/docker-java","commit_stats":null,"previous_names":[],"tags_count":54,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openzipkin%2Fdocker-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openzipkin%2Fdocker-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openzipkin%2Fdocker-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openzipkin%2Fdocker-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openzipkin","download_url":"https://codeload.github.com/openzipkin/docker-java/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224425775,"owners_count":17309190,"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":["docker","zipkin","zulu"],"created_at":"2024-11-13T09:35:45.781Z","updated_at":"2025-05-05T05:30:32.497Z","avatar_url":"https://github.com/openzipkin.png","language":"Shell","readme":"[![Gitter chat](http://img.shields.io/badge/gitter-join%20chat%20%E2%86%92-brightgreen.svg)](https://gitter.im/openzipkin/zipkin)\n[![Build Status](https://github.com/openzipkin/docker-java/workflows/test/badge.svg)](https://github.com/openzipkin/docker-java/actions?query=workflow%3Atest)\n\n`ghcr.io/openzipkin/java` is a minimal OpenJDK [Alpine Linux](https://github.com/openzipkin/docker-alpine) image.\n\nGitHub Container Registry: [ghcr.io/openzipkin/java](https://github.com/orgs/openzipkin/packages/container/package/java) includes:\n * `master` tag: latest commit\n * `MAJOR.MINOR.PATCH` tag: release corresponding to a [Current OpenJDK Version](https://pkgs.alpinelinux.org/packages?name=openjdk21)\n\nTags ending in `-jre` include only a JRE where unqualified tags include the full JDK, Maven, and a\nfew build utilities.\n\n## Using this image\nThis is an internal base layer primarily used in [zipkin](https://github.com/openzipkin/zipkin).\n\nTo try the image, run the `java -version` command:\n```bash\n$ docker run --rm ghcr.io/openzipkin/java:21.0.6_p7 -version\nopenjdk version \"21.0.4\" 2024-07-16\nOpenJDK Runtime Environment (build 21.0.4+7-alpine-r0)\nOpenJDK 64-Bit Server VM (build 21.0.4+7-alpine-r0, mixed mode, sharing)\n```\n\n## Release process\n\nMake sure you are on the right branch. If there is a branch prefixed JDK, it\nmay have workarounds applied for the version in question. The master branch is\nalways operable for the latest LTS JDKs that don't need workarounds.\n\nAlso, make sure you are using an LTS JDK. Any non-LTS would be an exception\nbasis and are unlikely to be consumed by Zipkin (primary reason for this repo).\n\nMake sure the [Dockerfile](Dockerfile) has `docker_parent_image` set to the\n[Current Alpine Version](https://www.alpinelinux.org/downloads/). If the image\ndoesn't yet exist, release it [here](https://github.com/openzipkin/docker-alpine)\nbefore continuing. Notably, this avoids missing CVE fixes by mistake.\n\nBuild the [Dockerfile](Dockerfile) using the current version without the\nrevision classifier from here:\n * https://pkgs.alpinelinux.org/packages?name=openjdk21\n```bash\n# Note 21.0.6_p7 not 21.0.6_p7-r2!\n./build-bin/build 21.0.6_p7\n```\n\nNext, verify the built image matches that version:\n```bash\n$ docker run --rm openzipkin/java:test -version\nopenjdk version \"21.0.6\" 2025-01-21\nOpenJDK Runtime Environment (build 21.0.6+7-alpine-r0)\nOpenJDK 64-Bit Server VM (build 21.0.6+7-alpine-r0, mixed mode, sharing)\n```\n\nTo release the image, push a tag matching the arg to `build-bin/build` (ex `21.0.6_p7`).\nThis triggers a [GitHub Actions](https://github.com/openzipkin/docker-java/actions) job to push the image.\n\n## java.lang.ClassNotFoundException\n\nThe image ending in `-jre` is stripped to only retain the minimal modules needed by Zipkin. This is\nto make it as small as possible. If the `zipkin` or `zipkin-slim` images fail with a\n`java.lang.ClassNotFoundException`, it may be related to the modules linked in the [Dockerfile](Dockerfile).\n\nIf the package begins with `java.`, `sun.` or `com.sun.`, it is likely a JRE module. To verify, use\n`javap` without any other options. If a result is printed, you need to link a corresponding module.\n\nFor example, here's the result of `javax.sql.rowset.serial.SerialException`, which is in the module\n`java.sql.rowset`:\n```\n$ javap javax.sql.rowset.serial.SerialException\nCompiled from \"SerialException.java\"\npublic class javax.sql.rowset.serial.SerialException extends java.sql.SQLException {\n  static final long serialVersionUID;\n  public javax.sql.rowset.serial.SerialException();\n  public javax.sql.rowset.serial.SerialException(java.lang.String);\n}\n```\n\n## CVEs\n\nThis builds JDK and JRE images over our [Alpine Linux](https://github.com/openzipkin/docker-alpine)\nbase layer. If you have any platform CVEs that relate to the Alpine version, check there first and\ncut a new version as necessary.\n\nSpecifically, this adds [Alpine's OpenJDK](https://pkgs.alpinelinux.org/packages?name=openjdk21)\npackage as well as Maven (to reduce image layers). If there is a concern about CVEs, check to see if\nthere is a newer JDK available and release it.\n\nIf the most recent has CVEs and the corresponding patch isn't yet released, check the [issues list](https://gitlab.alpinelinux.org/search?group_id=2\u0026project_id=1\u0026repository_ref=master\u0026scope=issues\u0026search=openjdk).\nYou may find another issue already, and if not you can make one with context. Sites who have needs\nthat cannot be met by open source support might consider building their own Java image and adding\nzipkin to that directly.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenzipkin%2Fdocker-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenzipkin%2Fdocker-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenzipkin%2Fdocker-java/lists"}