1---
2title: Build server infrastructure
3sidebar_title: Server infrastructure
4maxHeadingDepth: 4
5description: Learn about the current build server infrastructure when using EAS.
6---
7
8import { Collapsible } from '~/ui/components/Collapsible';
9import al from '@mdx-js/react';
10import { HardwareList, BuildResourceList } from '~/ui/components/utils/infrastructure';
11
12> This document was last updated on **May 5, 2023**.
13
14## Builder IP addresses
15
16Here is the [up-to-date list of builder IP addresses](https://expo.dev/eas-build-worker-ips.txt).
17
18## Configuring build environment
19
20Images for each platform have one specific version of Node.js, yarn, CocoaPods, Xcode, Ruby, Fastlane, and so on. You can override some of the versions in [eas.json](/build/eas-json).
21If there is no dedicated configuration option you're looking for, you can use [npm hooks](npm-hooks) to install or update any system dependencies with `apt-get` or `brew`. Please consider that those customizations are applied during the build and will increase your build times.
22
23When selecting an image for the build you can use the full name provided below or one of the aliases: `default`, `latest`.
24
25- The use of a specific name guarantees the consistent environment with only minor updates.
26- `default` alias will be assigned to the environment that most closely resembles the configuration used for Expo SDK development.
27- `latest` alias will be assigned to the image with the most up to date versions of the software.
28
29> **info** **Note:** If you do not provide `image` in **eas.json**, your build will use `default` image. However, in some cases, we select a more appropriate image based on the Expo SDK version or React Native version.
30> You can check what image is used for a build in the "Spin up build environment" build logs section.
31
32## Android build server configurations
33
34Android builders run on virtual machines in an isolated environment. Every build gets its own dedicated VM instance.
35
36- Hardware:
37
38  <HardwareList platform="android" />
39
40- [npm cache deployed with Kubernetes](caching/#javascript-dependencies)
41- [Maven cache deployed with Kubernetes](caching/#android-dependencies)
42- Global Gradle configuration in **~/.gradle/gradle.properties**:
43
44  ```ini ~/.gradle/gradle.properties
45  org.gradle.jvmargs=-Xmx14g -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
46  org.gradle.parallel=true
47  org.gradle.configureondemand=true
48  org.gradle.daemon=false
49  ```
50
51- Global npm configuration in **~/.npmrc**:
52
53  ```ini ~/.npmrc
54  registry=http://npm-cache-service.worker-infra-production.svc.cluster.local:4873
55  ```
56
57- Global Yarn configuration in **~/.yarnrc.yml**:
58
59  ```yml ~/.yarnrc.yml
60  unsafeHttpWhitelist:
61    - '*'
62  npmRegistryServer: 'http://npm-cache-service.worker-infra-production.svc.cluster.local:4873'
63  enableImmutableInstalls: false
64  ```
65
66### Android server images
67
68#### `ubuntu-22.04-jdk-11-ndk-r21e` (alias `latest`)
69
70<Collapsible summary="Details">
71
72- Docker image: `ubuntu:jammy-20220531`
73- NDK 21.4.7075529
74- Node.js 16.18.1
75- Yarn 1.22.17
76- pnpm 8.7.5
77- npm 8.19.2
78- Java 11
79
80</Collapsible>
81
82#### `ubuntu-22.04-jdk-8-ndk-r21e`
83
84<Collapsible summary="Details">
85
86- Docker image: `ubuntu:jammy-20220531`
87- NDK 21.4.7075529
88- Node.js 16.18.1
89- Yarn 1.22.17
90- pnpm 7.0.0
91- npm 8.19.2
92- Java 8
93
94</Collapsible>
95
96#### `ubuntu-20.04-jdk-11-ndk-r21e` (alias `default`)
97
98<Collapsible summary="Details">
99
100- Docker image: `ubuntu:focal-20210921`
101- NDK 21.4.7075529
102- Node.js 16.18.1
103- Yarn 1.22.17
104- pnpm 7.0.0
105- npm 8.19.2
106- Java 11
107
108</Collapsible>
109
110#### `ubuntu-20.04-jdk-8-ndk-r21e`
111
112<Collapsible summary="Details">
113
114- Docker image: `ubuntu:focal-20210921`
115- NDK 21.4.7075529
116- Node.js 16.18.1
117- Yarn 1.22.17
118- pnpm 7.0.0
119- npm 8.19.2
120- Java 8
121
122</Collapsible>
123
124#### `ubuntu-18.04-jdk-11-ndk-r19c`
125
126<Collapsible summary="Details">
127
128- Docker image: `ubuntu:bionic-20210930`
129- NDK 19.2.5345600
130- Node.js 16.18.1
131- Yarn 1.22.17
132- pnpm 7.0.0
133- npm 8.19.2
134- Java 11
135
136</Collapsible>
137
138#### `ubuntu-18.04-jdk-8-ndk-r19c`
139
140<Collapsible summary="Details">
141
142- Docker image: `ubuntu:bionic-20210930`
143- NDK 19.2.5345600
144- Node.js 16.18.1
145- Yarn 1.22.17
146- pnpm 7.0.0
147- npm 8.19.2
148- Java 8
149
150</Collapsible>
151
152## iOS build server configurations
153
154iOS builder VMs run on Mac Mini hosts in an isolated environment. Every build gets its own fresh macOS VM.
155[Learn more about it here](eas-json/#resourceclass-2)
156
157- Hardware:
158
159  <HardwareList platform="ios" />
160
161- Build resources:
162
163  <BuildResourceList platform="ios" />
164
165- [npm cache](caching/#javascript-dependencies)
166- [CocoaPods cache](caching/#ios-dependencies)
167- [`cocoapods-nexus-plugin`](https://github.com/expo/eas-build/tree/main/packages/cocoapods-nexus-plugin)
168- Global npm configuration in **~/.npmrc**:
169
170  ```ini ~/.npmrc
171  registry=http://10.254.24.9:4873
172  ```
173
174- Global Yarn configuration in **~/.yarnrc.yml**:
175
176  ```yml ~/.yarnrc.yml
177  unsafeHttpWhitelist:
178    - '*'
179  npmRegistryServer: 'registry=http://10.254.24.9:4873'
180  enableImmutableInstalls: false
181  ```
182
183### iOS server images
184
185#### `macos-ventura-13.4-xcode-14.3.1` (`latest` for Apple silicon builders, only available for Apple silicon builders)
186
187<Collapsible summary="Details">
188
189- macOS Ventrua 13.4
190- Xcode 14.3.1 (14E300c)
191- Node.js 16.18.1
192- Yarn 1.22.17
193- pnpm 8.6.5
194- npm 8.1.2
195- fastlane 2.213.0
196- CocoaPods 1.12.1
197- Ruby 2.7
198
199</Collapsible>
200
201#### `macos-ventura-13.3-xcode-14.3` (`default` for Apple silicon builders, only available for Apple silicon builders)
202
203<Collapsible summary="Details">
204
205- macOS Ventrua 13.3
206- Xcode 14.3 (14E222b)
207- Node.js 16.18.1
208- Yarn 1.22.17
209- pnpm 8.2.0
210- npm 8.1.2
211- fastlane 2.212.2
212- CocoaPods 1.12.0
213- Ruby 2.7
214
215</Collapsible>
216
217#### `macos-monterey-12.6-xcode-14.2` (`latest` for Intel builders)
218
219<Collapsible summary="Details">
220
221- macOS Monterey 12.6
222- Xcode 14.2 (14C18)
223- Node.js 16.18.1
224- Yarn 1.22.17
225- pnpm 7.27.0
226- npm 8.19.2
227- fastlane 2.211.0
228- CocoaPods 1.11.3
229- Ruby 2.7
230
231</Collapsible>
232
233#### `macos-monterey-12.6-xcode-14.1` (`default` for Intel builders)
234
235<Collapsible summary="Details">
236
237- macOS Monterey 12.6
238- Xcode 14.1 (14B47b)
239- Node.js 16.18.1
240- Yarn 1.22.17
241- pnpm 7.15.0
242- npm 8.19.2
243- fastlane 2.210.1
244- CocoaPods 1.11.3
245- Ruby 2.7
246
247</Collapsible>
248
249#### `macos-monterey-12.6-xcode-14.0`
250
251<Collapsible summary="Details">
252
253- macOS Monterey 12.6
254- Xcode 14.0 (14A309)
255- Node.js 16.18.1
256- Yarn 1.22.17
257- pnpm 7.11.0
258- npm 8.19.2
259- fastlane 2.210.0
260- CocoaPods 1.11.3
261- Ruby 2.7
262
263</Collapsible>
264
265#### `macos-monterey-12.4-xcode-13.4`
266
267<Collapsible summary="Details">
268
269- macOS Monterey 12.4
270- Xcode 13.4 (13F17a)
271- Node.js 16.18.1
272- Yarn 1.22.17
273- pnpm 7.0.0
274- npm 8.19.2
275- fastlane 2.205.2
276- CocoaPods 1.11.3
277- Ruby 2.7
278
279</Collapsible>
280
281#### `macos-big-sur-11.4-xcode-13.0`
282
283<Collapsible summary="Details">
284
285- macOS Big Sur 11.4
286- Xcode 13.0 (13A233)
287- Node.js 16.18.1
288- Yarn 1.22.17
289- pnpm 7.0.0
290- npm 8.19.2
291- fastlane 2.185.1
292- CocoaPods 1.10.1
293- Ruby 2.7
294
295</Collapsible>
296
297#### `macos-monterey-12.3-xcode-13.3` (deprecated)
298
299<Collapsible summary="Details">
300
301- macOS Monterey 12.3.1
302- Xcode 13.3.1 (13E500a)
303- Node.js 16.18.1
304- Yarn 1.22.17
305- pnpm 7.0.0
306- npm 8.19.2
307- fastlane 2.205.2
308- CocoaPods 1.11.3
309- Ruby 2.7
310
311</Collapsible>
312
313#### `macos-monterey-12.1-xcode-13.2` (deprecated)
314
315<Collapsible summary="Details">
316
317- macOS Monterey 12.1
318- Xcode 13.2.1 (13C100)
319- Node.js 16.18.1
320- Yarn 1.22.17
321- pnpm 7.0.0
322- npm 8.19.2
323- fastlane 2.201.0
324- CocoaPods 1.11.2
325- Ruby 2.7
326
327</Collapsible>
328
329#### `macos-big-sur-11.4-xcode-12.5` (deprecated, only available for Intel builders)
330
331<Collapsible summary="Details">
332
333- macOS Big Sur 11.4
334- Xcode 12.5 (12E5244e)
335- Node.js 16.18.1
336- Yarn 1.22.17
337- pnpm 7.0.0
338- npm 8.19.2
339- fastlane 2.185.1
340- CocoaPods 1.10.1
341- Ruby 2.7
342
343</Collapsible>
344