Skip to content

Commit 18378dc

Browse files
authored
Merge pull request #301491 from KaiqianYang/patch-1
Update migrate-to-azure-container-apps-build-buildpacks.md due to packeto java-azure sunset
2 parents dce3e3a + b33a81c commit 18378dc

File tree

1 file changed

+158
-27
lines changed

1 file changed

+158
-27
lines changed

articles/spring-apps/migration/migrate-to-azure-container-apps-build-buildpacks.md

Lines changed: 158 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,21 +22,52 @@ Azure Spring Apps service supports building an image from source code without us
2222

2323
This article shows you how to create a builder with a TOML file, and then build your source code or artifact file with the builder. For more information, see [builder.toml](https://buildpacks.io/docs/reference/config/builder-config/). To understand the build image, run image, and stack, see [What are base images](https://buildpacks.io/docs/for-app-developers/concepts/base-images/).
2424

25+
> [!NOTE]
26+
> This article previously recommended using the [Paketo Java Azure Composite Buildpack](https://github.com/paketo-buildpacks/java-azure), which is discontinued. We've updated the example to use the necessary individual components of the composite buildpack. For a list of all individual components included in the composite buildpack, see [buildpack.toml](https://github.com/paketo-buildpacks/java-azure/blob/main/buildpack.toml). For more information about the discontinuation of the composite buildpack, see [Paketo Buildpacks Sunsets Java Azure Composite Buildpack](https://blog.paketo.io/posts/paketo-java-azure-sunsets/).
27+
2528
## Prerequisites
2629

2730
- [Docker](https://docs.docker.com/get-docker/)
2831
- [Pack CLI](https://buildpacks.io/docs/for-platform-operators/how-to/integrate-ci/pack/)
2932

3033
## Standard plan
3134

32-
The Azure Spring Apps Standard plan comes with a built-in builder, which you can't customize. If you use the Standard plan, you need to create a TOML file called **standard-builder.toml** with the following content. With this file, you can create a builder equivalent to the one available in the Azure Spring Apps Standard plan.
35+
The Azure Spring Apps Standard plan comes with a built-in builder, which you can't customize. To replace this builder, you need to create a TOML file for your own builder. The following TOML file is an example that you can customize to build a Java Spring Boot app with Application Insights. Adjust the TOML file based on your app's requirements.
3336

3437
```toml
3538
# filename: standard-builder.toml
3639

3740
[[buildpacks]]
38-
uri = "docker://docker.io/paketobuildpacks/java-azure:12.0.0"
39-
id = "paketo-buildpacks/java-azure"
41+
uri = "docker://docker.io/paketobuildpacks/ca-certificates:3.9.0"
42+
id = "paketo-buildpacks/ca-certificates"
43+
44+
[[buildpacks]]
45+
uri = "docker://docker.io/paketobuildpacks/microsoft-openjdk:4.0.1"
46+
id = "paketo-buildpacks/microsoft-openjdk"
47+
48+
[[buildpacks]]
49+
uri = "docker://docker.io/paketobuildpacks/syft:2.6.1"
50+
id = "paketo-buildpacks/syft"
51+
52+
[[buildpacks]]
53+
uri = "docker://docker.io/paketobuildpacks/maven:6.19.2"
54+
id = "paketo-buildpacks/maven"
55+
56+
[[buildpacks]]
57+
uri = "docker://docker.io/paketobuildpacks/executable-jar:6.12.0"
58+
id = "paketo-buildpacks/executable-jar"
59+
60+
[[buildpacks]]
61+
uri = "docker://docker.io/paketobuildpacks/spring-boot:5.32.0"
62+
id = "paketo-buildpacks/spring-boot"
63+
64+
[[buildpacks]]
65+
uri = "docker://docker.io/paketobuildpacks/azure-application-insights:5.23.0"
66+
id = "paketo-buildpacks/azure-application-insights"
67+
68+
[[buildpacks]]
69+
uri = "docker://docker.io/paketobuildpacks/environment-variables:4.8.0"
70+
id = "paketo-buildpacks/environment-variables"
4071

4172
[[buildpacks]]
4273
uri = "docker://docker.io/paketobuildpacks/java-native-image:9.8.0"
@@ -47,16 +78,52 @@ uri = "docker://docker.io/paketobuildpacks/dotnet-core:0.48.3"
4778
id = "paketo-buildpacks/dotnet-core"
4879

4980
[[order]]
50-
[[order.group]]
51-
id = "paketo-buildpacks/java-azure"
81+
[[order.group]]
82+
id = "paketo-buildpacks/ca-certificates"
83+
optional = true
84+
version = "3.9.0"
85+
86+
[[order.group]]
87+
id = "paketo-buildpacks/microsoft-openjdk"
88+
version = "4.0.1"
89+
90+
[[order.group]]
91+
id = "paketo-buildpacks/syft"
92+
optional = true
93+
version = "2.6.1"
94+
95+
[[order.group]]
96+
id = "paketo-buildpacks/maven"
97+
optional = true
98+
version = "6.19.2"
99+
100+
[[order.group]]
101+
id = "paketo-buildpacks/executable-jar"
102+
optional = true
103+
version = "6.12.0"
104+
105+
[[order.group]]
106+
id = "paketo-buildpacks/spring-boot"
107+
optional = true
108+
version = "5.32.0"
109+
110+
[[order.group]]
111+
id = "paketo-buildpacks/azure-application-insights"
112+
optional = true
113+
version = "5.23.0"
114+
115+
[[order.group]]
116+
id = "paketo-buildpacks/environment-variables"
117+
optional = true
118+
version = "4.8.0"
52119

53120
[[order]]
54-
[[order.group]]
55-
id = "paketo-buildpacks/java-native-image"
121+
[[order.group]]
122+
id = "paketo-buildpacks/java-native-image"
56123

57124
[[order]]
58-
[[order.group]]
59-
id = "paketo-buildpacks/dotnet-core"
125+
[[order.group]]
126+
id = "paketo-buildpacks/dotnet-core"
60127

61128
[build]
62129
image = "paketobuildpacks/build-jammy-base:0.1.129"
@@ -138,14 +205,42 @@ The following table shows the Paketo Buildpack equivalents to the buildpacks use
138205
| `tanzu-buildpacks/python` | [paketo-buildpacks/python](https://github.com/paketo-buildpacks/python) |
139206
| `tanzu-buildpacks/web-servers` | [paketo-buildpacks/web-servers](https://github.com/paketo-buildpacks/web-servers) |
140207

141-
Take the default builder in the Enterprise plan as an example. With the following TOML file, named **enterprise-builder.toml**, you can create a similar builder on your local machine:
208+
To replace the builder in the Enterprise plan, you need to create a TOML file for your own builder. The following TOML file is an example that you can customize. With this TOML file, you can create a similar builder on your local machine. Adjust the TOML file based on your app's requirements.
142209

143210
```toml
144211
# filename: enterprise-builder.toml
145212

146213
[[buildpacks]]
147-
uri = "docker://docker.io/paketobuildpacks/java-azure:latest"
148-
id = "paketo-buildpacks/java-azure"
214+
uri = "docker://docker.io/paketobuildpacks/ca-certificates:3.9.0"
215+
id = "paketo-buildpacks/ca-certificates"
216+
217+
[[buildpacks]]
218+
uri = "docker://docker.io/paketobuildpacks/microsoft-openjdk:4.0.1"
219+
id = "paketo-buildpacks/microsoft-openjdk"
220+
221+
[[buildpacks]]
222+
uri = "docker://docker.io/paketobuildpacks/syft:2.6.1"
223+
id = "paketo-buildpacks/syft"
224+
225+
[[buildpacks]]
226+
uri = "docker://docker.io/paketobuildpacks/maven:6.19.2"
227+
id = "paketo-buildpacks/maven"
228+
229+
[[buildpacks]]
230+
uri = "docker://docker.io/paketobuildpacks/executable-jar:6.12.0"
231+
id = "paketo-buildpacks/executable-jar"
232+
233+
[[buildpacks]]
234+
uri = "docker://docker.io/paketobuildpacks/spring-boot:5.32.0"
235+
id = "paketo-buildpacks/spring-boot"
236+
237+
[[buildpacks]]
238+
uri = "docker://docker.io/paketobuildpacks/azure-application-insights:5.23.0"
239+
id = "paketo-buildpacks/azure-application-insights"
240+
241+
[[buildpacks]]
242+
uri = "docker://docker.io/paketobuildpacks/environment-variables:4.8.0"
243+
id = "paketo-buildpacks/environment-variables"
149244

150245
[[buildpacks]]
151246
uri = "docker://docker.io/paketobuildpacks/dotnet-core:latest"
@@ -168,35 +263,71 @@ uri = "docker://docker.io/paketobuildpacks/python:latest"
168263
id = "paketo-buildpacks/python"
169264

170265
[[order]]
171-
[[order.group]]
172-
id = "paketo-buildpacks/java-azure"
266+
[[order.group]]
267+
id = "paketo-buildpacks/ca-certificates"
268+
optional = true
269+
version = "3.9.0"
270+
271+
[[order.group]]
272+
id = "paketo-buildpacks/microsoft-openjdk"
273+
version = "4.0.1"
274+
275+
[[order.group]]
276+
id = "paketo-buildpacks/syft"
277+
optional = true
278+
version = "2.6.1"
279+
280+
[[order.group]]
281+
id = "paketo-buildpacks/maven"
282+
optional = true
283+
version = "6.19.2"
284+
285+
[[order.group]]
286+
id = "paketo-buildpacks/executable-jar"
287+
optional = true
288+
version = "6.12.0"
289+
290+
[[order.group]]
291+
id = "paketo-buildpacks/spring-boot"
292+
optional = true
293+
version = "5.32.0"
294+
295+
[[order.group]]
296+
id = "paketo-buildpacks/azure-application-insights"
297+
optional = true
298+
version = "5.23.0"
299+
300+
[[order.group]]
301+
id = "paketo-buildpacks/environment-variables"
302+
optional = true
303+
version = "4.8.0"
173304

174305
[[order]]
175-
[[order.group]]
176-
id = "paketo-buildpacks/dotnet-core"
306+
[[order.group]]
307+
id = "paketo-buildpacks/dotnet-core"
177308

178309
[[order]]
179-
[[order.group]]
180-
id = "paketo-buildpacks/go"
310+
[[order.group]]
311+
id = "paketo-buildpacks/go"
181312

182313
[[order]]
183-
[[order.group]]
184-
id = "paketo-buildpacks/web-servers"
314+
[[order.group]]
315+
id = "paketo-buildpacks/web-servers"
185316

186317
[[order]]
187-
[[order.group]]
188-
id = "paketo-buildpacks/nodejs"
318+
[[order.group]]
319+
id = "paketo-buildpacks/nodejs"
189320

190321
[[order]]
191-
[[order.group]]
192-
id = "paketo-buildpacks/python"
322+
[[order.group]]
323+
id = "paketo-buildpacks/python"
193324

194325
[build]
195-
image = "paketobuildpacks/build-jammy-base:latest"
326+
image = "paketobuildpacks/build-jammy-base:latest"
196327

197328
[run]
198-
[[run.images]]
199-
image = "paketobuildpacks/run-jammy-base:latest"
329+
[[run.images]]
330+
image = "paketobuildpacks/run-jammy-base:latest"
200331
```
201332

202333
To create a build with this TOML file, use the following command:

0 commit comments

Comments
 (0)