{"id":228234,"date":"2021-06-30T11:54:48","date_gmt":"2021-06-30T18:54:48","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/java\/?p=228234"},"modified":"2021-06-30T11:54:48","modified_gmt":"2021-06-30T18:54:48","slug":"end-of-updates-support-and-availability-of-zulu-for-azure","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/java\/end-of-updates-support-and-availability-of-zulu-for-azure\/","title":{"rendered":"End of Updates, Support and Availability of the Zulu for Azure builds of OpenJDK"},"content":{"rendered":"<p>Starting January 1<sup>st<\/sup> 2022, Microsoft and <a href=\"https:\/\/www.azul.com\/\">Azul<\/a> will no longer provide updates or support for the <a href=\"https:\/\/www.azul.com\/downloads\/azure-only\/\">Zulu for Azure<\/a> build of OpenJDK. While Java applications in production can continue to run without interruptions on these open source binaries \u2013 licensed under <a href=\"https:\/\/openjdk.java.net\/legal\/gplv2+ce.html\">GPLv2 with Classpath Exception<\/a> \u2013 quarterly bug fixes and security updates, and support will end on December 31, 2021. In addition, repositories, and the user download site for Zulu for Azure binaries may no longer be available after July 1<sup>st<\/sup>, 2022.<\/p>\n<p><a href=\"https:\/\/openjdk.java.net\/\">OpenJDK<\/a> issues quarterly Patch Set Updates (PSU) on a community-aligned schedule: January, April, July, and October. \u00a0This announcement provides more details on how Azure services will continue to provide secure and updated releases of Java, and how users can transition to other builds of OpenJDK.<\/p>\n<p>For customers interested in continuing to use Azul\u2019s OpenJDK-based distributions, Azul remains committed to publishing free updates of <a href=\"https:\/\/www.azul.com\/downloads\/#download-openjdk\">Azul Zulu builds of OpenJDK<\/a>, with optional commercial support available through Azul.<\/p>\n<p>Alternatively, customers can interchangeably use other OpenJDK distributions, such as <a href=\"https:\/\/www.microsoft.com\/openjdk\">Microsoft Build of OpenJDK<\/a>, <a href=\"https:\/\/adoptium.net\/\">Eclipse Adoptium\u2019s Temurin<\/a>, or any other build of OpenJDK from different vendors.<\/p>\n<h3>Support for Azure Customers<\/h3>\n<p>Microsoft Azure customers will continue to receive support for Java applications without any extra cost. For more information, please visit <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/developer\/java\/fundamentals\/java-support-on-azure\">Java Support on Azure<\/a>.<\/p>\n<p>For Azure services where Microsoft manages the Java runtime, services will gradually transition to OpenJDK distributions supported by Microsoft throughout the second half of 2021, following the release of July 2021 and October 2021 PSUs of OpenJDK for Java 8 and Java 11. These services will update the Java runtime according to their update plan or customer settings. Please consult the documentation of the service of your interest for more details and how this update may be reflected in your deployments.<\/p>\n<p>Microsoft will use the following OpenJDK distributions for these services:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.microsoft.com\/openjdk\">Microsoft Build of OpenJDK<\/a> for Java 11 and future versions.<\/li>\n<li><a href=\"https:\/\/adoptium.net\/\">Eclipse Adoptium\u2019s Temurin<\/a> for Java 8.<\/li>\n<\/ul>\n<p>For applications deployed to Azure services where Microsoft <strong>does not<\/strong> manage the Java runtime, customers may plan when and how to update Java and choose any JDK distribution.<\/p>\n<h3>Packages Availability Timeline<\/h3>\n<p>While we encourage customers to move to a different OpenJDK distribution as soon as practical, we understand this may take time. As such, Microsoft and Azul will continue to make all Zulu for Azure binaries available from the existing repositories managed by Azul until June 30<sup>th<\/sup> 2022 (i.e., 6 months beyond the end of updates and support). Customers with scripts (e.g., <em>yum<\/em>, <em>apt-get, wget, curl, etc.<\/em>) and CICD pipelines that directly download Zulu for Azure binaries from these repositories, will have additional time to plan their transition to a different OpenJDK distribution. After June 30<sup>th<\/sup>, 2022, Azul Zulu for Azure repositories may no longer host the Zulu for Azure binaries.<\/p>\n<h3>Container Images Availability Timeline<\/h3>\n<p>To ensure applications dependent on the Zulu for Azure images remain operational, images of Zulu for Azure will continue to be available until June 30<sup>th<\/sup>, 2022. We encourage customers to update their container builds to the latest versions of Zulu for Azure builds of OpenJDK for better security and performance enhancements and then start planning a transition to a new OpenJDK distribution.<\/p>\n<p>Customers who want to continue to receive Java updates after December 31, 2021, must change their Dockerfiles. Customers can use equivalent Docker images from Azul, which are fully compatible and also built on OpenJDK, or a Docker image from different vendors. Please visit Microsoft\u2019s Zulu for Azure <a href=\"https:\/\/hub.docker.com\/_\/microsoft-java-jdk\">repository<\/a> and Azul\u2019s Zulu builds of OpenJDK <a href=\"https:\/\/hub.docker.com\/u\/azul\">repository<\/a> for a complete list of compatible Docker images.<\/p>\n<p>Below we provide a list of interchangeable Docker images between Zulu for Azure and Azul Zulu builds of OpenJDK.<\/p>\n<table style=\"font-size: 1rem; background-color: #f7f7f9;\">\n<tbody>\n<tr>\n<td>\n<p><strong>Zulu for Azure<\/strong><\/p>\n<\/td>\n<td>\n<p><strong>Azul Zulu builds of OpenJDK<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:7-zulu-alpine<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-alpine:7<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:8-zulu-alpine<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-alpine:8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:11-zulu-alpine<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-alpine:11<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:13-zulu-alpine<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-alpine:13<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:15-zulu-alpine<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-alpine:15<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:7-zulu-centos<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-centos:7<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:8-zulu-centos<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-centos:8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:11-zulu-centos<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-centos:11<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:13-zulu-centos<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-centos:13<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:15-zulu-centos<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-centos:15<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:7-zulu-debian10<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-debian:7<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:8-zulu-debian10<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-debian:8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:11-zulu-debian10<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-debian:11<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:13-zulu-debian10<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-debian:13<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:15-zulu-debian10<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk-debian:15<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:7-zulu-ubuntu<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk:7<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:8-zulu-ubuntu<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk:8<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:11-zulu-ubuntu<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk:11<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:13-zulu-ubuntu<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk:13<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p>FROM mcr.microsoft.com\/java\/jdk:15-zulu-ubuntu<\/p>\n<\/td>\n<td>\n<p>FROM azul\/zulu-openjdk:15<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p><strong><u>Important:<\/u><\/strong> Customers transitioning from Zulu for Azure Docker images based on unsupported or outdated Linux distributions (i.e., Debian 8, Debian 9, Ubuntu 18.04, and Ubuntu 19.10), should consider a change to a newer base OS.<\/p>\n<h4>Other Images and Packages<\/h4>\n<h5><strong>JRE<\/strong><\/h5>\n<p>Developers can find <a href=\"https:\/\/hub.docker.com\/_\/microsoft-java-jre\">Zulu for Azure JRE<\/a> images under the \u201cmcr.microsoft.com\/java\/jre:\u201d prefix for the versions listed above. Azul\u2019s Zulu builds of OpenJDK may contain JRE images that match the same version. To verify, append the suffix \u201c-jre\u201d to the image tag as listed in the table above, e.g., azul\/zulu-openjdk:11-jre, and perform a \u2018docker pull\u2019 call to confirm availability.<\/p>\n<h5><strong>JRE Headless<\/strong><\/h5>\n<p>Developers can find <a href=\"https:\/\/hub.docker.com\/_\/microsoft-java-jre-headless\">Zulu for Azure JRE Headless<\/a> images under the \u201cmcr.microsoft.com\/java\/jre-headless:\u201d prefix for the same versions listed above. Azul Zulu may contain JRE images that match the same version. To verify, append the suffix \u201c-jre-headless\u201d to the image tag as listed in the table above, e.g., azul\/zulu-openjdk-alpine:13-jre-headless, and perform a \u2018docker pull\u2019 call to confirm availability.<\/p>\n<h5><strong>Apache Maven<\/strong><\/h5>\n<p>Developers can find <a href=\"https:\/\/hub.docker.com\/_\/microsoft-java-maven\">Zulu for Azure with Apache Maven<\/a> images under the \u201cmcr.microsoft.com\/java\/maven\u201d prefix, for Java 8 and Java 11, with Debian 9 and Debian 10 as base OS. Developers may move to the official Apache Maven images available on <a href=\"https:\/\/hub.docker.com\/_\/maven\/\">Docker Hub<\/a>. Azul Zulu may also contain images with Maven; check the <a href=\"https:\/\/hub.docker.com\/u\/azul\">Azul Zulu repository<\/a> for availability.<\/p>\n<h5><strong>Apache Tomcat<\/strong><\/h5>\n<p>Developers can find <a href=\"https:\/\/hub.docker.com\/_\/microsoft-java-tomcat\">Zulu for Azure with Apache Tomcat<\/a> images under the \u201cmcr.microsoft.com\/java\/tomcat\u201d prefix for Java 8 and Java 11 with Debian 10, Ubuntu 20.04, Alpine 3.12, and CentOS 8 as base OS. Developers may move to the official Apache Tomcat images available on <a href=\"https:\/\/hub.docker.com\/_\/tomcat\/\">Docker Hub<\/a>. Azul Zulu may also contain images with Tomcat; check the <a href=\"https:\/\/hub.docker.com\/u\/azul\">Azul Zulu repository<\/a> for availability.<\/p>\n<h5><strong>Windows Images<\/strong><\/h5>\n<p>Developers can find Zulu for Azure images for Windows Server Core. Customers who want to continue to receive updates of OpenJDK with these images will have to write and build their images and use a different OpenJDK distribution than Zulu for Azure. Developers can find the source code originally used to create these images on <a href=\"https:\/\/github.com\/microsoft\/java\/tree\/master\/docker\/windowsservercore\">GitHub<\/a>.<\/p>\n<h3>Important Dates<\/h3>\n<ol>\n<li><strong>July 20<sup>th<\/sup>, 2021<\/strong>: Q3 Java PSU releases.\n<\/li>\n<li><strong>October 19<sup>th<\/sup>, 2021<\/strong>: Q4 Java PSU releases (<strong>last Zulu for Azure update<\/strong>).\n<\/li>\n<li><strong>January 1<sup>st<\/sup>, 2022<\/strong>: End of updates and support for Zulu for Azure binaries.\n<\/li>\n<li><strong>July 1<sup>st<\/sup>, 2022:<\/strong> Zulu for Azure binaries may no longer be available from Azul Zulu for Azure repositories. Docker images may no longer be available on Docker Hub or in the Microsoft Container Registry.<\/li>\n<\/ol>\n<p>If you have further questions, please contact <a href=\"mailto:openjdk-support@microsoft.com\"><strong>openjdk-support@microsoft.com<\/strong><\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Starting January 1st, 2022, Microsoft and Azul will no longer provide updates or support for the Zulu for Azure build of OpenJDK. In addition, repositories, and the user download site for Zulu for Azure binaries may no longer be available after July 1st, 2022.<\/p>\n","protected":false},"author":8937,"featured_media":227205,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[14,1,249],"tags":[],"class_list":["post-228234","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud","category-java","category-openjdk"],"acf":[],"blog_post_summary":"<p>Starting January 1st, 2022, Microsoft and Azul will no longer provide updates or support for the Zulu for Azure build of OpenJDK. In addition, repositories, and the user download site for Zulu for Azure binaries may no longer be available after July 1st, 2022.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/posts\/228234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/users\/8937"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/comments?post=228234"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/posts\/228234\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/media\/227205"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/media?parent=228234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/categories?post=228234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/java\/wp-json\/wp\/v2\/tags?post=228234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}